Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich die veraltete Funktion „each()' in PHP ersetzen?

Wie kann ich die veraltete Funktion „each()' in PHP ersetzen?

Susan Sarandon
Susan SarandonOriginal
2024-12-16 01:25:09736Durchsuche

How Can I Replace the Deprecated `each()` Function in PHP?

Aktualisieren des Codes, um die Verwendung der veralteten Funktion „each()“ zu vermeiden

Die Funktion „each()“ wurde in PHP 7.2 offiziell veraltet, was dazu führt, dass Notwendigkeit von Codeaktualisierungen, um Fehler zu vermeiden und Best Practices beizubehalten. Dieser Artikel enthält Anleitungen zur Modernisierung von Code, der derzeit Each() verwendet.

Beispielcode und Lösungen:

Berücksichtigen Sie die folgenden Codeauszüge und die entsprechenden Aktualisierungen:

$ar = $o->me;
reset($ar);
list($typ, $val) = each($ar);

Aktualisierung: Verwenden Sie key() und current() für den Wert Zuweisung.

$ar = $o->me; // Reset no longer required
$typ = key($ar);
$val = current($ar);
$out = array('me' => array(), 'mytype' => 2, '_php_class' => null);
$expected = each($out);

Aktualisierung:Verwenden Sie key() und current() für den Elementabruf.

$out = array('me' => array(), 'mytype' => 2, '_php_class' => null);
$expected = [key($out), current($out)];
for(reset($broken);$kv = each($broken);) {...}

Aktualisierung : Führen Sie eine foreach-Schleife mit manuellem Schlüsselwert ein Zuweisung.

foreach ($broken as $k => $v) {
     $kv = [$k, $v];
}
list(, $this->result) = each($this->cache_data);

Update: Aktuellen Wert direkt zuweisen, mit optionaler next()-Weiterschaltung.

$this->result = current($this->cache_data);
// iterating to the end of an array or a limit > the length of the array
$i = 0;
reset($array);
while( (list($id, $item) = each($array)) || $i < 30 ) {
    // code
    $i++;
}

Update : Verwenden Sie eine for-Schleife zum Durchlaufen mit manuellem Schlüsselwert Abruf.

reset($array);
for ($i = 0; $i < 30; $i++) {
    $id = key($array);
    $item = current($array);
    // code
    next($array);
}

Durch die Implementierung dieser Updates können Sie Ihren Code effektiv modernisieren und an aktuelle PHP-Standards anpassen.

Das obige ist der detaillierte Inhalt vonWie kann ich die veraltete Funktion „each()' in PHP ersetzen?. 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