首页 >数据库 >mysql教程 >如何在 WordPress 中使用具有多个值的准备语句?

如何在 WordPress 中使用具有多个值的准备语句?

Patricia Arquette
Patricia Arquette原创
2024-11-11 07:35:02485浏览

How to Use Prepared Statements with Multiple Values in WordPress?

WordPress 中具有多个值的准备语句

在 WordPress 中使用具有多个值的准备语句时,正确处理这些值至关重要。当值作为连接字符串提供时,会出现此问题,导致值不正确转义。

解决方案

要纠正此问题,您可以使用以下方法方法:

// Create an array of the values to use in the list
$villes = array("paris", "fes", "rabat");    

// Generate the SQL statement
// The number of %s items is based on the length of the $villes array
$sql = "
  SELECT DISTINCT telecopie
  FROM `comptage_fax`
  WHERE `ville` IN(" . implode(', ', array_fill(0, count($villes), '%s')) . ")
";

// Call $wpdb->prepare passing the values of the array as separate arguments
$query = call_user_func_array(array($wpdb, 'prepare'), array_merge(array($sql), $villes));

echo $query;

详细说明

  • array_fill():生成指定长度的数组,每个元素给定值.
  • 内爆():将数组的元素连接成字符串。
  • call_user_func_array():使用参数数组调用函数。
  • array_merge():将两个或多个数组合并为一个。

以上是如何在 WordPress 中使用具有多个值的准备语句?的详细内容。更多信息请关注PHP中文网其他相关文章!

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