Verwendung von Arrays in MySQL-Abfragen (PHP): Ein umfassender Leitfaden
MySQL-Abfragen können durch die Einbindung von Arrays zur Angabe von Parametern erweitert werden. Dies ermöglicht die effiziente Verarbeitung mehrerer Werte innerhalb einer einzigen Anweisung.
Ansatz 1: Vorbereitete Anweisungen
Vorbereitete Anweisungen bieten eine sichere und effiziente Möglichkeit, dynamische Werte zu Abfragen hinzuzufügen . Mithilfe einer vorbereiteten Anweisung können Sie jedes Array-Element iterativ als Parameter binden:
$mysqli = new mysqli(...); $sql = "UPDATE MyTable SET LastUpdated = GETDATE() WHERE id = ?"; $stmt = $mysqli->prepare($sql); foreach ($ids as $id) { $stmt->bind_param("i", $id); $stmt->execute(); echo "Updated record ID: $id\n"; }
Ansatz 2: Parameterplatzhalter in der Abfrage
Alternativ können Sie einbetten Parameter-Platzhalter in der Abfrage selbst und binden alle Array-Elemente in einem Schritt:
$sql = "UPDATE MyTable SET LastUpdated = GETDATE() WHERE id IN (?)"; $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) . "\n";
Welchen Ansatz wählen?
Die Wahl hängt vom spezifischen Anwendungsfall ab:
Vorteile vorbereiteter Anweisungen
Denken Sie daran, dass die Verwendung vorbereiteter Anweisungen von entscheidender Bedeutung ist Sicherheitsmaßnahme, die Ihre Datenbank vor böswilligen Angriffen schützt.
Das obige ist der detaillierte Inhalt vonWie nutzt man Arrays effizient mit MySQL-Abfragen in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!