Heim > Datenbank > MySQL-Tutorial > Wie kann ich eine PDO-Prepared-Statement-Hilfsfunktion für Einfüge-/Aktualisierungsvorgänge erstellen?

Wie kann ich eine PDO-Prepared-Statement-Hilfsfunktion für Einfüge-/Aktualisierungsvorgänge erstellen?

Susan Sarandon
Freigeben: 2024-12-23 17:36:09
Original
890 Leute haben es durchsucht

How Can I Create a PDO Prepared Statement Helper Function for Insert/Update Operations?

PDO-vorbereitete Anweisungen für die Hilfsfunktion „Einfügen/Aktualisieren“

In herkömmlichen MySQL-Treiberszenarien ist die Funktion dbSet() ein wertvolles Werkzeug zum Generieren SET-Anweisungen. Bei der Verwendung von PDO-vorbereiteten Anweisungen ist jedoch ein ähnlicher Ansatz erforderlich, um den Code trocken und flexibel zu halten.

PDO-Vorbereitete-Anweisungs-Hilfsfunktion

Die folgende Hilfsfunktion, dbSet( ), kann zur Erreichung genutzt werden Dies:

function dbSet($fields, &$values) {
    $set = '';
    $values = array();

    foreach ($fields as $field) {
        if (isset($_POST[$field])) {
            $set .= "`$field` = ?,";
            $values[] = $_POST[$field];
        }
    }

    return rtrim($set, ',');
}
Nach dem Login kopieren

Verwendung

Betrachten Sie das folgende Beispiel:

$fields = explode(" ","name surname lastname address zip fax phone date");
$_POST['date'] = $_POST['y']."-".$_POST['m']."-"$_POST['d'];

$query  = "UPDATE $table SET ".dbSet($fields, $values).", stamp=NOW() WHERE>
Nach dem Login kopieren

ORM-Alternative

Für eine umfassendere Lösung sollten Sie die Verwendung eines ORM-Frameworks (Object-Relational Mapping) wie Doctrine in Betracht ziehen. Mit ORM kann die Datenpopulation erheblich vereinfacht werden:

$table = new Table();
$table->fromArray($_POST);
$table->save();
Nach dem Login kopieren

PDO-Erweiterungsklasse

Für eine individuelle Lösung kann die Erstellung einer PDO-Erweiterungsklasse eine bequeme Möglichkeit sein Behandeln Sie vorbereitete Anweisungsabfragen effizient und reduzieren Sie den Bedarf an ausführlichen bind_param()-Aufrufen.

Das obige ist der detaillierte Inhalt vonWie kann ich eine PDO-Prepared-Statement-Hilfsfunktion für Einfüge-/Aktualisierungsvorgänge erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage