Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Mencipta Fungsi Pembantu PDO untuk Operasi Sisipan/Kemas Kini Yang Cekap?

Bagaimanakah Saya Boleh Mencipta Fungsi Pembantu PDO untuk Operasi Sisipan/Kemas Kini Yang Cekap?

Linda Hamilton
Linda Hamiltonasal
2024-11-24 05:00:13378semak imbas

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

Sisipkan/Kemas kini Fungsi Pembantu Menggunakan PDO

Masalah: Mencipta fungsi pembantu untuk memudahkan manipulasi data menggunakan pernyataan yang disediakan PDO. Fungsi ini harus menjana pernyataan SET untuk mengemas kini rekod sedia ada dan membolehkan pemasukan data baharu dengan mudah.

Penyelesaian:

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

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

    return rtrim($set, ',');
}

$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>

Fungsi ini mengambil pelbagai medan nama dan rujukan kepada tatasusunan nilai. Ia berulang melalui nama medan, menyemak sama ada nilai yang sepadan wujud dalam data POST. Jika ia berlaku, ia membina serpihan pernyataan SET. Rujukan kepada tatasusunan nilai membenarkan fungsi mengisinya dengan nilai yang sesuai.

Untuk menggunakan fungsi, mula-mula letupkan nama medan ke dalam tatasusunan. Kemudian panggil fungsi, lulus tatasusunan medan dan rujukan kepada tatasusunan nilai kosong. Fungsi mengembalikan serpihan pernyataan SET. Akhir sekali, sediakan pertanyaan dan laksanakannya dengan tatasusunan nilai.

Pertimbangan:

  • Menggunakan ORM (seperti Doktrin) boleh memudahkan lagi manipulasi data, mengautomasikan kebanyakan proses manipulasi data.
  • Fungsi dbSet boleh disesuaikan lagi dengan menambah pengesahan dan ciri lain.

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

Kenyataan:
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