【发布时间】:2018-03-11 13:59:35
【问题描述】:
在 PHP 7.2 中,each 已弃用。 The documentation 说:
警告 自 PHP 7.2.0 起,该函数已被弃用。强烈建议不要依赖此函数。
如何更新我的代码以避免使用它?以下是一些示例:
-
$ar = $o->me; reset($ar); list($typ, $val) = each($ar); -
$out = array('me' => array(), 'mytype' => 2, '_php_class' => null); $expected = each($out); -
for(reset($broken);$kv = each($broken);) {...} -
list(, $this->result) = each($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++; }
当我在 PHP 7.2 上执行代码时,我收到以下错误:
已弃用:each() 函数已弃用。此消息将在进一步调用时被隐藏
【问题讨论】:
-
可以使用
foreach() -
array_map()也可以使用闭包。 -
这看起来像是来自 xmlrpc 库的东西。我也必须去修复一些东西,哈哈。
-
是的,它没有令人信服的理由而被弃用,只是让人们改变他们的代码,却一无所获。 PHP世界的另一个挫折。 wiki.php.net/rfc/deprecations_php_7_2