Mise à jour du code pour éviter d'utiliser la fonction obsolète each()
La fonction each() a été officiellement obsolète dans PHP 7.2, ce qui a incité le besoin de mises à jour du code pour éviter les erreurs et maintenir les meilleures pratiques. Cet article fournit des conseils sur la façon de moderniser le code qui utilise actuellement each().
Exemples de code et de solutions :
Considérez les extraits de code suivants et leurs mises à jour correspondantes :
$ar = $o->me; reset($ar); list($typ, $val) = each($ar);
Mise à jour : Utilisez key() et current() pour la valeur affectation.
$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);
Mise à jour : Utiliser key() et current() pour la récupération des éléments.
$out = array('me' => array(), 'mytype' => 2, '_php_class' => null); $expected = [key($out), current($out)];
for(reset($broken);$kv = each($broken);) {...}
Mise à jour : Introduire une boucle foreach avec une valeur-clé manuelle affectation.
foreach ($broken as $k => $v) { $kv = [$k, $v]; }
list(, $this->result) = each($this->cache_data);
Mise à jour : Attribue directement la valeur actuelle, avec l'avancement facultatif de next().
$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++; }
Mise à jour : Utiliser une boucle for pour le parcours avec une valeur-clé manuelle récupération.
reset($array); for ($i = 0; $i < 30; $i++) { $id = key($array); $item = current($array); // code next($array); }
En implémentant ces mises à jour, vous pouvez moderniser efficacement votre code et l'aligner sur les normes PHP actuelles.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!