Heim >Datenbank >MySQL-Tutorial >Wie verwende ich von WordPress vorbereitete Anweisungen mit IN()-Bedingungen?

Wie verwende ich von WordPress vorbereitete Anweisungen mit IN()-Bedingungen?

Susan Sarandon
Susan SarandonOriginal
2024-11-14 14:33:02633Durchsuche

How to Use WordPress Prepared Statements with IN() Conditions?

Vorbereitete WordPress-Anweisungen mit IN()-Bedingungen

Wenn Sie versuchen, eine von WordPress vorbereitete Anweisung mit mehreren Werten in einer IN()-Bedingung zu verwenden, Möglicherweise treten Probleme auf, wenn die Werte mit maskierten doppelten Anführungszeichen zu einer einzelnen Zeichenfolge verkettet werden.

Um dieses Problem zu beheben, führen Sie die folgenden Schritte aus:

  1. Konvertieren Sie die Werte in ein Array:
$villes = array("paris", "fes", "rabat");
  1. Generieren Sie die SQL-Anweisung mit dem Platzhalter für die Werte:
$sql = "
  SELECT DISTINCT telecopie
  FROM `comptage_fax`
  WHERE `ville` IN(" . implode(', ', array_fill(0, count($villes), '%s')) . ")
";
  1. Verwenden Sie call_user_func_array, um die Anweisung mit den Werten separat vorzubereiten Argumente:
$query = call_user_func_array(array($wpdb, 'prepare'), array_merge(array($sql), $villes));

Diese Methode stellt sicher, dass jeder Wert ordnungsgemäß maskiert und als separater Parameter übergeben wird.

Das obige ist der detaillierte Inhalt vonWie verwende ich von WordPress vorbereitete Anweisungen mit IN()-Bedingungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn