3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php //$regex = '/(?P<function_name>.*?)\s*\((?P<parameters>.*?)\)\s*/i'; $regex = '/(?P<function_name>.+)\s*\((?P<parameters>[^)]+)\s*/i'; //$regex = '/(?P<function_name>.+)\s*\((?P<parameters>.*?)\)\s*/i/'; preg_match($regex, 'HOUR(`date`, \'abc1234\')', $matches); print_r($matches); $params = explode(',', $matches['parameters']); $params2 = array_map('trim', '`', $params); print_r($params2);
Output for 4.3.3 - 7.1.0
Array ( [0] => HOUR(`date`, 'abc1234' [function_name] => HOUR [1] => HOUR [parameters] => `date`, 'abc1234' [2] => `date`, 'abc1234' ) Warning: array_map(): Argument #2 should be an array in /in/pEiMq on line 18
Output for 4.3.2
Array ( [0] => HOUR(`date`, 'abc1234' [1] => HOUR [2] => `date`, 'abc1234' ) Notice: Undefined index: parameters in /in/pEiMq on line 15 Warning: array_map(): Argument #2 should be an array in /in/pEiMq on line 18
Output for 4.3.0 - 4.3.1
Array ( [0] => HOUR(`date`, 'abc1234' [1] => HOUR [2] => `date`, 'abc1234' ) Notice: Undefined index: parameters in /in/pEiMq on line 15 Warning: array_map() [http://www.php.net/function.array-map]: Argument #2 should be an array in /in/pEiMq on line 18