繁体   English   中英

Zend中quote和quoteInto有什么区别?

[英]What's the difference between quote and quoteInto in Zend?

我不知道quoteInto和quote有什么不同。

quoteInto()用于为SQL查询准备数据。 quote()函数仅引用可能终止字符串文字的内容,例如',“,\\ 0等。

$sql = 'SELECT * FROM users WHERE enabled = ? AND country = ?';
$sql = $users->getAdapter()->quoteInto($sql, 1);
$sql = $users->getAdapter()->quoteInto($sql, 'UK');

//SELECT * FROM users WHERE enabled = 1 AND country = 'UK'

print $db->quote("%some'stuff%") . "\n"; 
// Output: '%some\'stuff%' 

我不认为quoteInto()是最佳解决方案,因为它仅转义特殊字符,并在其周围应用引号。 转义通常存在几个问题,例如,您必须具有规格列表。 使用过的DBMS的字符并维护此列表-您如何知道Zend拥有100%完美的DBMS列表? 在我看来,只有一种真正安全的解决方案->使用参数化查询。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM