Durchlaufen eines Arrays von IDs für MySQL-Abfragen
Bei der Arbeit mit MySQL-Abfragen in PHP müssen Sie möglicherweise mehrere Werte aus einem integrieren Array in die Abfrage ein. Dieser Leitfaden zeigt, wie Sie dies effizient mit vorbereiteten Anweisungen und dynamischen SQL-Abfragen erreichen können.
Vorbereitete Anweisungen (empfohlen)
Vorbereitete Anweisungen bieten mehr Sicherheit und Effizienz. So verwenden Sie sie:
$ids = array(2, 4, 6, 8); $sql = "UPDATE MyTable SET LastUpdated = GETDATE() WHERE id = ?"; $stmt = $mysqli->prepare($sql); for ($i = 0; $i < count($ids); $i++) { $stmt->bind_param("i", $ids[$i]); $stmt->execute(); echo "Updated record ID: $ids[$i]"; } $stmt->close();
Dynamische SQL-Abfragen
Alternativ können Sie eine dynamische SQL-Abfrage dynamisch erstellen:
$ids = array(2, 4, 6, 8); $params = implode(",", array_fill(0, count($ids), "?")); $sql = "UPDATE MyTable SET LastUpdated = GETDATE() WHERE id IN ($params)"; $stmt = $mysqli->prepare($sql); $types = str_repeat("i", count($ids)); $args = array_merge(array($types), $ids); call_user_func_array(array($stmt, 'bind_param'), ref($args)); $stmt->execute(); echo "Updated record IDs: " . implode(",", $ids);
Vergleich und Verwendung Richtlinien
Vorteile vorbereiteter Anweisungen
Das obige ist der detaillierte Inhalt vonWie aktualisiere ich effizient mehrere MySQL-Datensätze mithilfe von PHP mit einem Array von IDs?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!