3v4l.org

run code in 300+ PHP versions simultaneously
65<?php define('MAX_LOOPS',5); function withRefValue($elements, $transform) { echo "\n---( Array with $elements element(s): )---\n"; //Build array: for ($i=0; $i<$elements; $i++) { $a[] = "v.$i"; } $counter=0; echo "--> State of array before loop:\n"; var_dump($a); echo "--> Do loop:\n"; foreach ($a as $k=>&$v) { echo " iteration $counter: \$k=$k; \$v=$v\n"; eval($transform); $counter++; if ($counter>MAX_LOOPS) { echo " ** Stuck in a loop! **\n"; break; } } echo "--> State of array after loop:\n"; var_dump($a); } echo "\nPopping elements off end of an unreferenced array, using &\$value."; $transform = 'array_pop($a);'; withRefValue(1, $transform); withRefValue(2, $transform); withRefValue(3, $transform); withRefValue(4, $transform); withRefValue(5, $transform); withRefValue(6, $transform);

preferences:
43.84 ms | 402 KiB | 5 Q