PHP定義済みインターフェースのイテレータ使用例
この記事の例では、PHP 定義済みインターフェイスの Iterator の使用方法について説明します。次のように、参照用に全員と共有します。
Iterator インターフェイス
独自の外部イテレータまたはクラスを通じて内部的に反復できるインターフェイス。
インターフェイスの概要
Iterator extends Traversable { /* 方法 */ abstract public current ( void ) : mixed abstract public key ( void ) : scalar abstract public next ( void ) : void abstract public rewind ( void ) : void abstract public valid ( void ) : bool }
例:
<?php class myIterator implements Iterator { private $position = 0; private $array = array( 'first_element', 'second_element', 'last_element', ); /** * 重置键的位置 */ public function rewind(): void { var_dump(__METHOD__); $this->position = 0; } /** * 返回当前元素 */ public function current() { var_dump(__METHOD__); return $this->array[$this->position]; } /** * 返回当前元素的键 * @return int */ public function key(): int { var_dump(__METHOD__); return $this->position; } /** * 将键移动到下一位 */ public function next(): void { var_dump(__METHOD__); ++$this->position; } /** * 判断键所在位置的元素是否存在 * @return bool */ public function valid(): bool { var_dump(__METHOD__); return isset($this->array[$this->position]); } } $it = new myIterator; foreach ($it as $key => $value) { var_dump($key, $value); echo "\n"; }
出力結果:
string 'myIterator::rewind' (length=18) )
文字列 'myIterator::valid' (長さ=17)
文字列 'myIterator::current' (長さ=19)
文字列 'myIterator::key' (長さ=15)
int 0
文字列 'first_element' (長さ=13)
文字列 'myIterator::next' (長さ=16)
文字列 'myIterator::valid' (長さ=17)
文字列 'myIterator: :current' (length=19)
string 'myIterator::key' (length=15)
int 1
string 'second_element' (length=14)
string 'myIterator::next' (長さ=16)
文字列 'myIterator::valid' (長さ=17)
文字列 'myIterator::current' (長さ=19)
文字列 'myIterator::key' (長さ=15)
int 2
文字列 'last_element' (長さ=12)
文字列 'myIterator::next' (長さ=16)
文字列 'myIterator::valid' (長さ=17)
結果から、クラスが Iterator インターフェイスを実装し、クラス インスタンス データ セットを変更すると、データ セットのキーが最初にリセットされ、その後徐々に元に戻されることがわかります。現在の要素と現在のキー。
関連する学習の推奨事項: PHP プログラミングの入門から熟練度まで
以上がPHP定義済みインターフェースのイテレータ使用例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
