<?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']);
$params = array_map('trim', $params);
$chars = array_fill(0, count($params), '`');
$params = array_map('trim', $params, $chars);
print_r($params);
preferences:
38.85 ms | 402 KiB | 5 Q