3v4l.org

run code in 300+ PHP versions simultaneously
<?php function array_subtract(array $source, array $subtractor) { foreach ($subtractor as $subtractorItem) { $subtractorKey = array_search($subtractorItem, $source, true); if ($subtractorKey !== false) { unset($source[$subtractorKey]); } } return array_values($source); } var_dump(array_subtract([ 't', 'e', 's', 't' ], [ 't' ])); // [ 'e', 's', 't' ] var_dump(array_subtract([ 't', 'e', 's', 't' ], [ 't', 't' ])); // [ 'e', 's' ] var_dump(array_subtract([ 't', 'e', 's', 't' ], [ 't', 'e', 's', 't' ])); // [] var_dump(array_subtract([ 't', 'e', 's', 't' ], [ 'x' ])); // [ 't', 'e', 's', 't' ]
Output for 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
array(3) { [0]=> string(1) "e" [1]=> string(1) "s" [2]=> string(1) "t" } array(2) { [0]=> string(1) "e" [1]=> string(1) "s" } array(0) { } array(4) { [0]=> string(1) "t" [1]=> string(1) "e" [2]=> string(1) "s" [3]=> string(1) "t" }

preferences:
98.88 ms | 1557 KiB | 4 Q