【问题标题】:Updating from Pear DB to Pear MDB2 - what is the developer trying to do in the query?从 Pear DB 更新到 Pear MDB2 - 开发人员试图在查询中做什么?
【发布时间】:2015-11-02 10:07:51
【问题描述】:

我正在将一个站点从 pear DB 更新到 MDB2,我已经取得了相当大的进展,但是我遇到了一个查询,我不确定他们在这里试图实现什么。

谁能解释一下。

在这里

        $bookRes = $mdb2->query(("SELECT * FROM book WHERE (".join(' OR ', $sqlParams).") $categorySQL ORDER BY title"), $sqlValues);
        while ($row = $bookRes->fetchRow()) {
            $row['type'] = 'book';
            $booksPossibles[] = $row;
        }

【问题讨论】:

    标签: php mysql pear


    【解决方案1】:

    我需要查看更多代码才能确定,但​​这似乎是 SELECT 语句的简单动态生成,其中存储在 $sqlParams 数组中的各种条件(带有占位符)被添加到 WHERE子句和这些条件的值在 $sqlValues 变量中指定,也可能是一个数组。

    所以 $sqlParams 和 $sqlValues 可能看起来像:

    $sqlParams = array("val1 > ?", "val2 = ?");
    $sqlValues = array(2, 4);
    

    (知道 PHP 中的 join 关键字只是 implode 的别名。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多