我正在尋找一種獲取MySQL函數參數的方法,並將它們放入PHP中的數組中。例如:如何在PHP中獲取MySQL函數的參數
$field = "CONCAT(fieldA, ' ', fieldB)";
我迄今所做的是:
preg_match("/^([A-Z_]*)\((.*)\)/", $field, $matches)
$parameters = explode(",", $matches[2]);
這對於上面的例子正常工作。然而嘗試了下面的例子中相同的解決方案:
$field = "CONCAT_WS(', ', fieldA, fieldB)";
會導致:
Array
(
[0] => '
[1] => '
[2] => fieldA
[3] => fieldB
)
而且我想獲得:
Array
(
[0] => ', '
[1] => fieldA
[2] => fieldB
)
我正在尋找一個通用的方法這樣做,而不僅僅是我提供的例子。它應該適用於所有類型的參數;字符串,字段名稱和函數。
我不能讓這個問題。如何獲取MySQL函數的參數?對我來說,這看起來像[XY問題](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem) – Peter
好的,我詳細闡述了我的任務,希望現在更清楚我正在努力實現的。 –
正則表達式魔術師需要在這裏:D – Peter