Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Mencipta Fungsi Pembantu Penyata Disediakan PDO untuk Operasi Sisipan/Kemas Kini?

Bagaimanakah Saya Boleh Mencipta Fungsi Pembantu Penyata Disediakan PDO untuk Operasi Sisipan/Kemas Kini?

Susan Sarandon
Lepaskan: 2024-12-23 17:36:09
asal
929 orang telah melayarinya

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

Penyata Disediakan PDO untuk Fungsi Sisipan/Kemas Kini Pembantu

Dalam senario pemacu MySQL tradisional, fungsi dbSet() ialah alat yang berharga untuk menjana penyataan SET. Walau bagaimanapun, apabila menggunakan penyataan yang disediakan PDO, pendekatan yang sama diperlukan untuk mengekalkan kekeringan dan fleksibiliti kod.

Fungsi Pembantu Penyata Disediakan PDO

Fungsi pembantu berikut, dbSet( ), boleh digunakan untuk mencapai ini:

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

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

    return rtrim($set, ',');
}
Salin selepas log masuk

Penggunaan

Pertimbangkan contoh berikut:

$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>
Salin selepas log masuk

ORM Alternatif

Untuk penyelesaian yang lebih komprehensif, pertimbangkan untuk menggunakan rangka kerja ORM (pemetaan hubungan objek) seperti Doktrin. Dengan ORM, populasi data boleh dipermudahkan dengan ketara:

$table = new Table();
$table->fromArray($_POST);
$table->save();
Salin selepas log masuk

Kelas Sambungan PDO

Untuk penyelesaian tersuai, mencipta kelas sambungan PDO boleh menyediakan cara yang mudah untuk mengendalikan pertanyaan pernyataan yang disediakan dengan cekap, mengurangkan keperluan untuk panggilan verbose bind_param().

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta Fungsi Pembantu Penyata Disediakan PDO untuk Operasi Sisipan/Kemas Kini?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan