$test = array(1, 2, 3, 4, 5);
foreach($test as $element)
{
echo $element;
$element = next($test);
echo $element;
}
これは出力を生成し、 "122334455" PHP 5.2.0 に出力が "13243545" がのForeachイテレータ行動差5.3.3
方法PHP 5.3.3で生成されますイテレータを制御することによって5.3.3の5.2.0の出力を最も効率的に再現できますか?
これは、イテレータがforeach内の5.2では動作しますが、5.3のforeachでは動作しないため、バグかもしれません。
"122334455"または "13243545"という出力を希望しますか? –
私は "122334455"を望みます。私はforeachのイテレータを制御する手段が必要です。私はnext()とprev()でそのコントロールを使用していますが、効果は5.3.3のループで次の反復まで一時的です。 – FinalForm
なぜこの動作を最初に使用しますか?あなたは本当にイテレータを変更してはいけません。 –