Mysql
 sql >> Datenbank >  >> RDS >> Mysql

mysql_query zu PDO und vorbereiteten Anweisungen

PHP bietet eine ganze Reihe praktischer Funktionen, die viele Dinge erledigen, die Sie von Hand erledigen.

  • PDO unterstützt benannte Parameter in Ihren SQL-Anweisungen, sodass Sie dann ein Schlüssel/Wert-Array übergeben können, in dem die Schlüssel mit Ihren benannten Parameterplatzhaltern übereinstimmen.
  • Der join() Die Funktion ist sehr nützlich, um durch Kommas getrennte Listen zu erstellen.
  • Es gibt viele Funktionen, um Arrays zu manipulieren .
  • Einige Funktionen ermöglichen es Ihnen, einen Rückruf zu geben (was in PHP 5.3 eine Schließung sein kann), um Arrays dynamisch zu verarbeiten.

Beispiel (nicht getestet):

function insertFields($fields) {
    $columns = join(",", array_map(
        function($col) { return "`".preg_replace("/`/gu","``",$col)."`"}, 
        array_keys($fields)));

    $params = join(",", array_map(
        function($col) { return ":".preg_replace("/[`\s]/gu","",$col)},
        array_keys($fields)));

    $stdquery = "INSERT INTO masteridx ({$columns}) VALUES ({$params})";
    $stmt = $pdo->prepare($stdQuery);
    $stmt->execute($fields);
}