pdo::quote-k8凯发旗舰

pdo::quote

(php 5 >= 5.1.0, php 7, php 8, pecl pdo >= 0.2.1)

pdo::quote为 sql 查询里的字符串添加引号  

说明

public pdo::quote(string $string, int $parameter_type = pdo::param_str): string

pdo::quote() 为输入的字符串添加引号(如果有需要),并对特殊字符进行转义,且引号的风格和底层驱动适配。

如果使用此函数构建 sql 语句,强烈建议使用 pdo::prepare() 配合参数构建,而不是用  pdo::quote() 把用户输入的数据拼接进 sql 语句。   使用 prepare 语句处理参数,不仅仅可移植性更好,而且更方便、免疫 sql 注入;相对于拼接 sql 更快,客户端和服务器都能缓存编译后的 sql 查询。

不是所有的 pdo 驱动都实现了此功能(例如 pdo_odbc)。   考虑使用 prepare 代替。

caution    

安全性:默认字符集

字符集不仅仅要在数据库服务器上设置,也要为数据库连接设置(取决于驱动),它影响了 pdo::quote()。       更多信息可参考pdo 驱动文档。

参数


  • string

  • 要添加引号的字符串。

  • parameter_type

  • 为驱动提示数据类型,以便选择引号风格。

返回值

返回加引号的字符串,理论上可以安全用于 sql 语句。 如果驱动不支持这种方式,将返回 false 。 

#pdo #php
发表评论
投稿
网站地图