ホームページ >バックエンド開発 >PHPチュートリアル >PHP で非推奨の `each()` 関数を置き換えるにはどうすればよいですか?
非推奨の each() 関数の使用を避けるためのコードの更新
each() 関数は PHP 7.2 で正式に非推奨となり、エラーを回避し、ベスト プラクティスを維持するためにコードを更新する必要があります。この記事では、現在 each() を使用しているコードを最新化する方法についてのガイダンスを提供します。
サンプル コードと解決策:
次のコードの抜粋と対応する更新を検討してください。
$ar = $o->me; reset($ar); list($typ, $val) = each($ar);
更新: key() と値の割り当てには current() を使用します。
$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);
Update: 要素の取得には key() と current() を使用します。
$out = array('me' => array(), 'mytype' => 2, '_php_class' => null); $expected = [key($out), current($out)];
for(reset($broken);$kv = each($broken);) {...}
更新: 手動キーと値を使用した foreach ループを導入しますassign.
foreach ($broken as $k => $v) { $kv = [$k, $v]; }
list(, $this->result) = each($this->cache_data);
Update: オプションの 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++; }
Update : 手動の Key-Value によるトラバーサルに for ループを利用する
reset($array); for ($i = 0; $i < 30; $i++) { $id = key($array); $item = current($array); // code next($array); }
これらの更新を実装することで、コードを効果的に最新化し、現在の PHP 標準に合わせることができます。
以上がPHP で非推奨の `each()` 関数を置き換えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。