3v4l.org

run code in 300+ PHP versions simultaneously
<?php function foo($rewind = false) { static $data = array( array('site_name' => 'bar'), array(), array('site_name' => 'baz') ); if ($rewind) { rewind($data); return; } $current = current($data); next($data); return $current; } while ($bar = foo()) echo $bar['site_name']."\n"; foo(true); echo '-------------------------------------------'."\n"; while (($bar = foo()) !== false) echo $bar['site_name']."\n";
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
bar Fatal error: Uncaught TypeError: rewind(): Argument #1 ($stream) must be of type resource, array given in /in/aOanZ:10 Stack trace: #0 /in/aOanZ(10): rewind(Array) #1 /in/aOanZ(21): foo(true) #2 {main} thrown in /in/aOanZ on line 10
Process exited with code 255.
Output for 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.24 - 5.5.35, 5.6.8 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33
bar Warning: rewind() expects parameter 1 to be resource, array given in /in/aOanZ on line 10 ------------------------------------------- baz

preferences:
213.32 ms | 403 KiB | 288 Q