3v4l.org

run code in 300+ PHP versions simultaneously
<?php function hasColor(Array $a,$color){ foreach($a as $k=>$v){ if($v['color']===$color){ return true; } } return false; } function checkColors(Array &$a){ foreach($a as $k=>&$v){ switch($v['color']){ case 'blue': $appendColor = 'pink'; break; case 'green': $appendColor = 'blue'; break; case 'pink': $appendColor = 'green'; break; } if(hasColor($a,$appendColor)){ continue; } $a[] = ['color'=>$appendColor]; return checkColors($a); } } $colors = [ [ 'color'=>'blue' ] ]; checkColors($colors); var_dump($colors);
Output for 7.0.0 - 7.0.25, 7.1.0 - 7.1.20, 7.2.6 - 7.2.33, 7.3.16 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6 - 8.3.7
array(3) { [0]=> array(1) { ["color"]=> string(4) "blue" } [1]=> array(1) { ["color"]=> string(4) "pink" } [2]=> array(1) { ["color"]=> string(5) "green" } }
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 array(3) { [0]=> array(1) { ["color"]=> string(4) "blue" } [1]=> array(1) { ["color"]=> string(4) "pink" } [2]=> array(1) { ["color"]=> string(5) "green" } }

preferences:
156.38 ms | 402 KiB | 181 Q