在 PDO 中绑定 LIKE 值
在 PDO 中使用 LIKE 查询时,了解如何正确绑定搜索值以避免意外情况至关重要
部分匹配绑定
要绑定部分匹配,您可以使用以下语法:
SELECT wrd FROM tablename WHERE wrd LIKE :partial
绑定参数:部分到您要搜索的部分值。例如,如果您有 $partial = "somet",则将其绑定为:
$stmt->bindParam(':partial', $partial);
使用通配符绑定
将部分匹配与通配符位于末尾,您可以使用以下方法之一:
PDO 生成的通配符:
使用以下语法:
SELECT wrd FROM tablename WHERE wrd LIKE ':partial%'
将参数 :partial 绑定到不带通配符的部分值。
SQL 生成的通配符:
使用以下语法:
SELECT wrd FROM tablename WHERE wrd LIKE CONCAT(:partial, '%')
将参数 :partial 绑定到不带通配符的部分值。
复杂的 LIKE 查询
如果部分值包含 %、_ 或 等特殊字符,则需要对它们进行转义以防止出现意外结果。使用以下代码:
$stmt = $db->prepare("SELECT wrd FROM tablename WHERE wrd LIKE :term ESCAPE '+'"); $escaped = str_replace(array('+', '%', '_'), array('++', '+%', '+_'), $var); $stmt->bindParam(':term', $escaped);
通过遵循这些准则,您可以在 PDO 查询中有效绑定 LIKE 值。
以上是如何在PDO查询中有效绑定LIKE值?的详细内容。更多信息请关注PHP中文网其他相关文章!