1

我目前正在开发一个基于 prestashop 代码的框架。当他们查询连接表等时,我在 DbQuery.php 中找到了pSQL和函数。bqSQL

我正在尝试在 prestashop 上找到该功能。但我没有找到。我想知道它是否是 PHP 的预定义函数?我从谷歌查看但没有文档(除了它可能是 postgreSQL,但我不确定)。

如果有人能告诉我这些功能是做什么用的?有什么区别吗?

4

2 回答 2

9

pSQL&bqSQL不是PHP的预定义函数。它们是来自文件/config/alias.php的 Prestashop 函数

于 2013-09-07T04:03:33.207 回答
2

当前命名为“db::escape(...)”并在别名中定义为“pSQL”(如 Happy 所说),在旧的 1.2 版本中,它直接定义在 db 类上。

当前方法“逃脱”(PS 1.6)

public function escape($string, $html_ok = false, $bq_sql = false)
{
    if (_PS_MAGIC_QUOTES_GPC_)
        $string = stripslashes($string);
    if (!is_numeric($string))
    {
        $string = $this->_escape($string);
        if (!$html_ok)
            $string = strip_tags(Tools::nl2br($string));
        if ($bq_sql === true)
            $string = str_replace('`', '\`', $string);
    }
    return $string;
}

请注意,“escape”方法从后代类调用“_escape”方法,允许对每个数据库实现实施不同的保护)。

于 2015-06-21T01:39:53.947 回答