Bagaimana Menggunakan Penyata Disediakan dengan Syarat IN() untuk Berbilang Nilai dalam WordPress?

Linda Hamilton
Lepaskan: 2024-11-15 06:43:02
asal
778 orang telah melayarinya

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

Proper WordPress Prepared Statement with IN() Condition for Multiple Values

When using prepared statements in WordPress, handling multiple values within an IN() condition can pose a challenge. This issue arises when the input values, stored in strings with double quotes, are not parsed correctly, resulting in a single string with escaped quotes.

To implement a prepared statement correctly in WordPress for multiple values, use the following approach:

  1. Create an array with the values for the IN() condition.
  2. Generate the SQL statement with the appropriate number of %s placeholders based on the length of the array using array_fill().
  3. Prepare the query using call_user_func_array(), passing the SQL statement and the array values as separate arguments.

Consider the following example:

// 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;
Salin selepas log masuk

This code will output the correct SQL statement with three separate values in the IN() condition. Using this technique, you can ensure that prepared statements work as intended with multiple values in WordPress.

Atas ialah kandungan terperinci Bagaimana Menggunakan Penyata Disediakan dengan Syarat IN() untuk Berbilang Nilai dalam WordPress?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan