首页  >  文章  >  数据库  >  如何在 WordPress 中使用带有 IN() 条件的准备语句来获取多个值?

如何在 WordPress 中使用带有 IN() 条件的准备语句来获取多个值?

Linda Hamilton
Linda Hamilton原创
2024-11-15 06:43:02780浏览

How to Use Prepared Statements with IN() Condition for Multiple Values in WordPress?

使用 IN() 条件处理多个值的正确 WordPress 准备语句

在 WordPress 中使用准备好的语句时,处理 IN( 中的多个值)条件可能会带来挑战。当存储在带双引号的字符串中的输入值未正确解析时,会出现此问题,从而导致单个字符串带有转义引号。

要在 WordPress 中为多个值正确实现准备好的语句,请使用以下命令方法:

  1. 使用 IN() 条件的值创建一个数组。
  2. 根据数组的长度使用适当数量的 %s 占位符生成 SQL 语句array_fill()。
  3. 使用 call_user_func_array() 准备查询,将 SQL 语句和数组值作为单独的参数传递。

考虑以下示例:

// Values for IN() condition
$villes = array('paris', 'fes', 'rabat');

// Generate SQL statement
$sql = "SELECT DISTINCT telecopie FROM `comptage_fax` WHERE `ville` IN(" . implode(', ', array_fill(0, count($villes), '%s')) . ")";

// Prepare query
$query = call_user_func_array(array($wpdb, 'prepare'), array_merge(array($sql), $villes));

echo $query;

此代码将输出正确的 SQL 语句,其中 IN() 条件中包含三个单独的值。使用此技术,您可以确保准备好的语句在 WordPress 中使用多个值按预期工作。

以上是如何在 WordPress 中使用带有 IN() 条件的准备语句来获取多个值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn