从 $sql 获取所有绑定

Get all bindings from $sql

我想从我的 sql 语句中获取所有绑定。该语句如下所示:

$sql = "INSERT INTO tbl_user (f_name, l_name) values (:f_name, :l_name)";

输出应该是:f_name, :l_name 我如何实现这一点?预赛?

可能有多种方法可以做到这一点,这使用 preg_match_all():(\w*)\b 的正则表达式(基本上是 : 后跟字符直到单词边界)...

preg_match_all("/:(\w*)\b/", $sql, $matches);
print_r($matches);

这给了你

Array
(
    [0] => Array
        (
            [0] => :f_name
            [1] => :l_name
        )

    [1] => Array
        (
            [0] => f_name
            [1] => l_name
        )

)