【问题标题】:PHP: How do I find (Oracle) parameters in a SQL query?PHP:如何在 SQL 查询中查找 (Oracle) 参数?
【发布时间】:2011-02-21 06:55:28
【问题描述】:

假设您有一个字符串:“SELECT * FROM TABLE WHERE column1 = :var1 AND column2 = :var2”

现在,我如何获得一个包含所有变量的数组,如下所示:

Array
(
     [0] => :var1
     [1] => :var2
)

我已经使用 PHP 的 preg_match_all 进行了尝试,但我在使用正则表达式时遇到了困难。

$varcount = preg_match_all("/ :.+ /", $sql, $out);

【问题讨论】:

    标签: php sql regex parameters


    【解决方案1】:

    试试这个正则表达式:

    /:\w+/
    

    \w 匹配 a-zA-Z0-9_ 中的任何一个,这通常是参数名称的组成部分。

    所以对于您的代码,

    $varcount = preg_match_all("/:\\w+/", $sql, $out);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-06
      • 2021-09-20
      • 2022-01-25
      • 1970-01-01
      • 2013-02-10
      • 2016-07-06
      • 2014-10-04
      相关资源
      最近更新 更多