3v4l.org

run code in 300+ PHP versions simultaneously
<?php $results = array( 0 => 'DogCatSheepBlue WhaleShark', 1 => 'CatPigGoatOtter', 2 => 'ElephantTigerDogBlue WhaleGoat', 3 => 'SeahorseSnakeGoatLion' ); function search($array, $search) { $words = explode(' ', $search); $regex = '/(' . implode('|', array_filter($words)) . ')/'; return array_filter($array, function ($v) use ($regex) { return preg_match($regex, $v); }); } print_r(search($results, 'Cat Whale')); print_r(search($results, 'GoatSeahorse')); print_r(search($results, 'Pig'));
Output for 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.27, 8.4.1 - 8.4.14
Array ( [0] => DogCatSheepBlue WhaleShark [1] => CatPigGoatOtter [2] => ElephantTigerDogBlue WhaleGoat ) Array ( ) Array ( [1] => CatPigGoatOtter )

preferences:
142.94 ms | 407 KiB | 5 Q