3v4l.org

run code in 300+ PHP versions simultaneously
<?php $str = "I like driving/flying/eating cars/aeroplanes/lunch"; $lines = array($str); $results = array(); while ($line = array_shift($lines)) { if (preg_match("/(\w+)(?:\/\w+)+/ui", $line, $match, PREG_OFFSET_CAPTURE)) { list($string, $offset) = $match[1]; array_push($lines, sprintf("%s%s", substr($line, 0, $offset + strlen($string)), substr($line, $offset + strlen($match[0][0])) )); array_push($lines, sprintf("%s%s", substr($line, 0, $offset), substr($line, $offset + strlen($string) + 1) )); } else { $results[] = $line; } } print_r($results);
Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.36, 5.6.0 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.10, 7.2.0 - 7.2.33, 7.3.12 - 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.6
Array ( [0] => I like driving cars [1] => I like driving aeroplanes [2] => I like driving lunch [3] => I like flying cars [4] => I like eating cars [5] => I like flying aeroplanes [6] => I like flying lunch [7] => I like eating aeroplanes [8] => I like eating lunch )

preferences:
237.26 ms | 406 KiB | 346 Q