【发布时间】:2014-05-21 11:49:54
【问题描述】:
似乎我无法通过引用对 SplFixedArray 中的值进行迭代:
$spl = new SplFixedArray(10);
foreach ($spl as &$value)
{
$value = "string";
}
var_dump($spl);
输出:
Fatal error: Uncaught exception 'RuntimeException' with message 'An iterator cannot be used with foreach by reference'
有什么解决方法吗?
【问题讨论】:
-
使用 foreach 循环预填充的方法是使用密钥:
foreach ($spl as $key => $value) { $spl[$key] = "string"; } -
SplFixedArray 不适用于任何部分的引用;它不仅限于迭代。