首页 > 后端开发 > 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
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板