3v4l.org

run code in 300+ PHP versions simultaneously
<?php $files1 = array('AAA', 'BBB', 'CcC'); $files2 = array_filter($files1, function ( &$path ) { $path = strtolower($path); return true; }); var_dump($files1, $files2);
Output for 8.4.1 - 8.4.12
Warning: {closure:/in/dp6Lt:5}(): Argument #1 ($path) must be passed by reference, value given in /in/dp6Lt on line 5 Warning: {closure:/in/dp6Lt:5}(): Argument #1 ($path) must be passed by reference, value given in /in/dp6Lt on line 5 Warning: {closure:/in/dp6Lt:5}(): Argument #1 ($path) must be passed by reference, value given in /in/dp6Lt on line 5 array(3) { [0]=> string(3) "AAA" [1]=> string(3) "BBB" [2]=> string(3) "CcC" } array(3) { [0]=> string(3) "AAA" [1]=> string(3) "BBB" [2]=> string(3) "CcC" }
Output for 8.2.0 - 8.2.29, 8.3.0 - 8.3.25
Warning: {closure}(): Argument #1 ($path) must be passed by reference, value given in /in/dp6Lt on line 5 Warning: {closure}(): Argument #1 ($path) must be passed by reference, value given in /in/dp6Lt on line 5 Warning: {closure}(): Argument #1 ($path) must be passed by reference, value given in /in/dp6Lt on line 5 array(3) { [0]=> string(3) "AAA" [1]=> string(3) "BBB" [2]=> string(3) "CcC" } array(3) { [0]=> string(3) "AAA" [1]=> string(3) "BBB" [2]=> string(3) "CcC" }
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.33
Warning: {closure}(): Argument #1 ($path) must be passed by reference, value given in /in/dp6Lt on line 8 Warning: {closure}(): Argument #1 ($path) must be passed by reference, value given in /in/dp6Lt on line 8 Warning: {closure}(): Argument #1 ($path) must be passed by reference, value given in /in/dp6Lt on line 8 array(3) { [0]=> string(3) "AAA" [1]=> string(3) "BBB" [2]=> string(3) "CcC" } array(3) { [0]=> string(3) "AAA" [1]=> string(3) "BBB" [2]=> string(3) "CcC" }
Output for 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33
array(3) { [0]=> string(3) "AAA" [1]=> string(3) "BBB" [2]=> string(3) "CcC" } array(3) { [0]=> string(3) "AAA" [1]=> string(3) "BBB" [2]=> string(3) "CcC" }
Output for 5.5.0 - 5.5.38, 5.6.0 - 5.6.40
array(3) { [0]=> string(3) "aaa" [1]=> string(3) "bbb" [2]=> string(3) "ccc" } array(3) { [0]=> string(3) "aaa" [1]=> string(3) "bbb" [2]=> string(3) "ccc" }

preferences:
151.3 ms | 413 KiB | 5 Q