Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich Platzhalter-SQL-Abfragen verwenden, um Arrays an WHERE-Klauseln zu übergeben?
Platzhalter-SQL-Abfragen verwenden, um Arrays an WHERE-Klauseln zu übergeben
Beim Umgang mit Arrays in SQL-Abfragen, insbesondere bei der Verwendung von WHERE-Klauseln, wird dies der Fall Es ist notwendig, einen Weg zu finden, die Werte des Arrays in die Abfragezeichenfolge zu integrieren. Das bereitgestellte ID-Array ($galleries) erfordert eine Abfrage, die diese Werte effizient in ihrer WHERE-Klausel verwendet.
Eine Lösung besteht in der Verwendung von Platzhalter-SQL-Abfragen. Befolgen Sie diese Schritte:
1. Definieren Sie die Platzhalterzeichenfolge:
$placeholder = join(',', array_fill(0, count($galleries), '?'));
Dadurch wird eine Zeichenfolge mit durch Kommas getrennten Fragezeichen erstellt, die die Platzhalter für die Array-Werte darstellen. In unserem Beispiel wäre die Platzhalterzeichenfolge „?,,?“.
2. Bereiten Sie die Abfragezeichenfolge vor:
$query = "SELECT * FROM galleries WHERE id IN ({$placeholder})";
Die Abfragezeichenfolge verwendet den IN-Operator und die Platzhalterzeichenfolge, um die Array-Werte in die WHERE-Klausel zu integrieren.
3. Binden Sie die Array-Werte:
Verwenden Sie eine vorbereitete Anweisung, binden Sie die Array-Werte an die Platzhalter:
$stmt = $conn->prepare($query); $stmt->bind_param(str_repeat('i', count($galleries)), ...$galleries);
Dadurch werden die Array-Elemente an die Platzhalter in der vorbereiteten Anweisung gebunden.
4. Führen Sie die Abfrage aus:
$stmt->execute();
Die vorbereitete Anweisung wird ausgeführt, wobei effektiv die Array-Werte in der WHERE-Klausel verwendet werden.
Das obige ist der detaillierte Inhalt vonWie kann ich Platzhalter-SQL-Abfragen verwenden, um Arrays an WHERE-Klauseln zu übergeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!