更新程式碼以避免使用已棄用的each() 函數
each() 函數已在PHP 7.2 中正式棄用,提示需要更新程式碼以避免錯誤並保持最佳實踐。本文提供了有關如何對目前使用 every() 的程式碼進行現代化改造的指南。
示例代碼和解決方案:
考慮以下代碼摘錄及其相應的更新:
$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);
更新: 使用 key() 和 current() 進行元素擷取。
$out = array('me' => array(), 'mytype' => 2, '_php_class' => null); $expected = [key($out), current($out)];
for(reset($broken);$kv = each($broken);) {...}
更新:引入帶有手動鍵值的foreach循環賦值。
foreach ($broken as $k => $v) { $kv = [$k, $v]; }
list(, $this->result) = each($this->cache_data);
更新:直接分配目前值,並可選擇 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++; }
更新: 利用 for 迴圈進行手動鍵值遍歷檢索。
reset($array); for ($i = 0; $i < 30; $i++) { $id = key($array); $item = current($array); // code next($array); }
透過實作這些更新,您可以有效地現代化程式碼並使其與目前的 PHP 標準保持一致。
以上是如何替換 PHP 中已棄用的 `each()` 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!