首頁 > 後端開發 > php教程 > 如何替換 PHP 中已棄用的 `each()` 函數?

如何替換 PHP 中已棄用的 `each()` 函數?

Susan Sarandon
發布: 2024-12-16 01:25:09
原創
732 人瀏覽過

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

更新程式碼以避免使用已棄用的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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板