如何在 PHP 中使用 PDO 准备语句执行 LIKE 查询?

Linda Hamilton
发布: 2024-11-01 17:03:30
原创
890 人浏览过

How to Execute a LIKE Query with PDO Prepared Statements in PHP?

PHP PDO 准备语句与 MySQL LIKE 查询

本文解决了使用 PHP 的 PDO 类(MySQL 驱动程序)执行 LIKE 的问题使用 MySQL 数据库进行查询。

尝试对预准备语句使用 LIKE 时会出现问题,因为 PDOexecute() 方法中使用的语法与 MySQL 客户端不同。

错误的语法:

<code class="php">$ret = $prep->execute(array(':searchTerm' => '"%'.$searchTerm.'%"'));</code>
登录后复制

添加了不必要的双引号,导致不正确的结果。

同样,此语法也是不正确的:

<code class="php">$ret = $prep->execute(array(':searchTerm' => '%'.$searchTerm.'%'));</code>
登录后复制

,因为它缺少所需的附加语法准备好的语句。

使用 PDO 准备好的语句执行 LIKE 查询的正确语法是:

<code class="php">$prep = $dbh->prepare($sql);
$ret = $prep->execute(array(':searchTerm' => '%'.$searchTerm.'%'));</code>
登录后复制

准备好的语句比字符串连接具有优势,因为它们可以防止 SQL 注入。它们将值视为与查询分开的实体,从而消除了繁琐的串联的需要。

以上是如何在 PHP 中使用 PDO 准备语句执行 LIKE 查询?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!