Heim  >  Artikel  >  Backend-Entwicklung  >  Nutzungsanalyse der PHP-Aggregat-Iterator-Schnittstelle IteratorAggregate

Nutzungsanalyse der PHP-Aggregat-Iterator-Schnittstelle IteratorAggregate

jacklove
jackloveOriginal
2018-07-04 17:47:312612Durchsuche

Dieser Artikel stellt hauptsächlich die Verwendung der PHP-Aggregat-Iterator-Schnittstelle IteratorAggregate vor und analysiert das Konzept, die Funktion, die Definition und die Verwendung der Aggregat-Iterator-Schnittstelle IteratorAggregate in Form von Beispielen

Das Beispiel in diesem Artikel beschreibt die Verwendung der PHP-Aggregat-Iterator-Schnittstelle IteratorAggregate. Teilen Sie es als Referenz mit allen:

PHP IteratorAggregate wird auch als Aggregatiterator bezeichnet. Es stellt eine Schnittstelle zum Erstellen externer Iteratoren bereit:

IteratorAggregate extends Traversable {
  abstract public Traversable getIterator ( void )
}

Bei der Implementierung der getIterator-Methode müssen Sie eine Instanz einer Klasse zurückgeben, die die Iterator-Schnittstelle implementiert.

Beispielbeschreibung:

<?php
/**
 * 利用聚合式迭代器,并返回一个实现了Iterator接口的类的实例
 *
 * @author 疯狂老司机
 */
class myData implements IteratorAggregate {
  public $one = "Public property one";
  public $two = "Public property two";
  public $three = "Public property three";
  public function __construct() {
    $this->last = "last property";
  }
  public function getIterator() {
    return new ArrayIterator($this);
  }
}
$obj = new myData;
foreach($obj as $key => $value) {
  var_dump($key, $value);
  echo &#39;<br>&#39;;// Linux:echo "\n";
}
?>

Ausgabe des obigen Beispiels:

string &#39;one&#39; (length=3)
string &#39;Public property one&#39; (length=19)
string &#39;two&#39; (length=3)
string &#39;Public property two&#39; (length=19)
string &#39;three&#39; (length=5)
string &#39;Public property three&#39; (length=21)
string &#39;last&#39; (length=4)
string &#39;last property&#39; (length=13)

ArrayIterator kapselt ein Objekt oder Array in eine Klasse, die über foreach betrieben werden kann. Weitere Informationen finden Sie in der Einführung von SPL-Iteratoren. Interessierte Freunde können der chinesischen PHP-Website folgen.

Artikel, die Sie interessieren könnten:

Detaillierte Erläuterung der Verwendung der PHP-Erkennungsschnittstelle Traversable

Benutzerdefinierte PHP-Serialisierungsschnittstelle Serialisierbare Nutzungsanalyse und Erklärung

Detaillierte Erklärung zur Verwendung der Opcache-Beschleunigung von PHP

Das obige ist der detaillierte Inhalt vonNutzungsanalyse der PHP-Aggregat-Iterator-Schnittstelle IteratorAggregate. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn