3v4l.org

run code in 300+ PHP versions simultaneously
<?php function parseQuery($query, &$parameters) { $query = preg_replace_callback('/(?J)(?<k>\w+):(?:(?<v>\w+)|"(?<v>[^"]+?)")/', function ($match) use (&$parameters) { $parameters[$match['k']] = $match['v']; }, $query); return array_filter(explode(' ', $query)); } var_dump(parseQuery('hello world user:12345 foo said:"go eat a phallus" bar', $parameters), $parameters);

preferences:
41.6 ms | 402 KiB | 5 Q