Heim > Backend-Entwicklung > PHP-Tutorial > [php vordefinierte Schnittstelle] Iterator

[php vordefinierte Schnittstelle] Iterator

不言
Freigeben: 2023-03-23 19:12:01
Original
1210 Leute haben es durchsucht

Der in diesem Artikel geteilte Inhalt ist der [PHP-vordefinierte Interface]-Iterator. Jetzt kann ich ihn mit allen teilen. Freunde in Not können sich auf den Inhalt dieses Artikels beziehen

Iterator (Iterator)-Schnittstelle

Einführung: Eine Schnittstelle, die intern ihren eigenen externen Iterator oder ihre eigene Klasse iterieren kann.

Erklärung spezifischer Funktionen

Schnittstellenzusammenfassung:

Iterator extends Traversable {    /* 方法 */
    abstract public mixed current ( void )    abstract public scalar key ( void )    abstract public void next ( void )    abstract public void rewind ( void )    abstract public bool valid ( void )
}
Nach dem Login kopieren
Nach dem Login kopieren

Beispiel:

Example #1 基本用法(使用 foreach 时,迭代器方法的调用顺序)<?phpclass myIterator implements Iterator {
    private $position = 0;    private $array = array(        "firstelement",        "secondelement",        "lastelement",
    );  

    public function __construct() {
        $this->position = 0;
    }    function rewind() {
        var_dump(__METHOD__);        $this->position = 0;
    }    function current() {
        var_dump(__METHOD__);        return $this->array[$this->position];
    }    function key() {
        var_dump(__METHOD__);        return $this->position;
    }    function next() {
        var_dump(__METHOD__);
        ++$this->position;
    }    function valid() {
        var_dump(__METHOD__);        return isset($this->array[$this->position]);
    }
}$it = new myIterator;foreach($it as $key => $value) {
    var_dump($key, $value);    echo "\n";
}1.rewind -> valid -> current -> key 
2.next -> valid -> current -> key3.next -> valid -> current -> key4.next -> valid?>
Nach dem Login kopieren
Nach dem Login kopieren

Iterator Iterator ) Schnittstelle

Einführung: Eine Schnittstelle, die intern über ihren eigenen externen Iterator oder ihre eigene Klasse iterieren kann.

Erklärung spezifischer Funktionen

Schnittstellenzusammenfassung:

Iterator extends Traversable {    /* 方法 */
    abstract public mixed current ( void )    abstract public scalar key ( void )    abstract public void next ( void )    abstract public void rewind ( void )    abstract public bool valid ( void )
}
Nach dem Login kopieren
Nach dem Login kopieren

Beispiel:

Example #1 基本用法(使用 foreach 时,迭代器方法的调用顺序)<?phpclass myIterator implements Iterator {
    private $position = 0;    private $array = array(        "firstelement",        "secondelement",        "lastelement",
    );  

    public function __construct() {
        $this->position = 0;
    }    function rewind() {
        var_dump(__METHOD__);        $this->position = 0;
    }    function current() {
        var_dump(__METHOD__);        return $this->array[$this->position];
    }    function key() {
        var_dump(__METHOD__);        return $this->position;
    }    function next() {
        var_dump(__METHOD__);
        ++$this->position;
    }    function valid() {
        var_dump(__METHOD__);        return isset($this->array[$this->position]);
    }
}$it = new myIterator;foreach($it as $key => $value) {
    var_dump($key, $value);    echo "\n";
}1.rewind -> valid -> current -> key 
2.next -> valid -> current -> key3.next -> valid -> current -> key4.next -> valid?>
Nach dem Login kopieren
Nach dem Login kopieren

Verwandte Empfehlungen:

Detaillierte Erläuterung der vordefinierten PHP-Variablen

PHP-vordefinierte Variablenmethoden


Das obige ist der detaillierte Inhalt von[php vordefinierte Schnittstelle] Iterator. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage