Rumah >pangkalan data >tutorial mysql >Bagaimana Menggunakan Penyata Disediakan dengan Pelbagai Nilai dalam WordPress?

Bagaimana Menggunakan Penyata Disediakan dengan Pelbagai Nilai dalam WordPress?

Patricia Arquette
Patricia Arquetteasal
2024-11-11 07:35:02505semak imbas

How to Use Prepared Statements with Multiple Values in WordPress?

Penyata Disediakan dengan Pelbagai Nilai dalam WordPress

Apabila menggunakan pernyataan yang disediakan dalam WordPress dengan pelbagai nilai, adalah penting untuk mengendalikan nilai dengan sewajarnya. Isu timbul apabila nilai disediakan sebagai rentetan bercantum, yang membawa kepada pelarian nilai yang tidak betul.

Penyelesaian

Untuk membetulkan isu ini, anda boleh menggunakan yang berikut pendekatan:

// 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;

Elaborasi

  • array_fill(): Menghasilkan tatasusunan panjang yang ditentukan dengan nilai yang diberikan dalam setiap elemen .
  • meletup(): Menggabungkan elemen tatasusunan ke dalam rentetan.
  • call_user_func_array(): Memanggil fungsi menggunakan tatasusunan parameter.
  • array_merge(): Menggabungkan dua atau lebih tatasusunan ke dalam satu.

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

Kenyataan:
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