Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Memodenkan Kod MySQL-PHP Legasi Saya Menggunakan PDO dan Penyata Disediakan?

Bagaimanakah Saya Boleh Memodenkan Kod MySQL-PHP Legasi Saya Menggunakan PDO dan Penyata Disediakan?

Mary-Kate Olsen
Lepaskan: 2024-12-01 01:16:10
asal
243 orang telah melayarinya

How Can I Modernize My Legacy MySQL-PHP Code Using PDO and Prepared Statements?

Menulis Semula Kod MySQL-PHP Legasi dengan Penamatan:

Dalam bidang pembangunan PHP, fungsi mysql_* telah menjadi usang, memerlukannya penggantian dengan kenyataan yang disediakan dan PDO yang lebih selamat. Panduan ini akan menyelidiki secara spesifik cara menulis semula kod warisan dengan berkesan menggunakan pendekatan moden ini.

Konsep Teras:

  • PDO: PDO (Objek Data PHP) menyediakan antara muka yang lebih baik dan standard untuk pangkalan data operasi.
  • Pernyataan Disediakan: Kenyataan yang disediakan meningkatkan keselamatan dengan menghalang serangan suntikan SQL. Mereka membenarkan pelaksanaan pertanyaan dinamik tanpa risiko input berniat jahat menjejaskan pangkalan data anda.

Menulis Semula Kod:

Mari kita periksa contoh kod yang disediakan:

1. Mengkonfigurasi Sambungan:

Lama:

$db = new dbConn('127.0.0.1', 'root', 'pass', 'people', 'animals');
Salin selepas log masuk

Baharu:

$db = new PDO('mysql:host=127.0.0.1;dbname=people;charset=UTF-8', 'root', 'pass');
Salin selepas log masuk
  • The Pembina PDO menggabungkan maklumat sambungan ke dalam rentetan sambungan tunggal, menghapuskan keperluan untuk tambahan konfigurasi.

2. Pemilihan Pangkalan Data:

Lama:

public function selectDb($database)
Salin selepas log masuk

Baharu: T/A

  • PDO tidak lagi memerlukan pemilihan pangkalan data yang jelas. Semua operasi pangkalan data akan dilakukan dalam konteks pangkalan data yang ditentukan dalam rentetan sambungan.

3. Penghapusan Pembina dan Pemusnah:

  • PDO menyediakan pembina dan pemusnah secara lalai. Versi yang dilaksanakan secara manual dalam kod lama tidak lagi diperlukan.

Kod Disemak:

Kod yang disemak yang terhasil hanya akan mengekalkan fungsi awam connect() kaedah, yang harus diubah suai untuk menyambung ke pangkalan data menggunakan PDO pembina:

public function connect()
{
    $this->conn = new PDO('mysql:host=' . $this->server . ';dbname=' . $this->db_people . ';charset=UTF-8', $this->user, $this->pass);
}
Salin selepas log masuk

Nota Tambahan:

  • Jika anda ingin melanjutkan fungsi PDO dengan kelas tersuai, anda boleh mewarisi daripada PDO itu sendiri.
  • Penyata yang disediakan adalah penting untuk meningkatkan keselamatan dan harus digunakan di mana-mana sahaja mungkin.
  • Rujuk manual PHP untuk mendapatkan maklumat terperinci tentang PDO dan pernyataan yang disediakan.

Dengan mengikuti garis panduan ini, anda boleh menulis semula kod warisan anda dengan berkesan untuk memastikan pematuhan dengan pembangunan PHP moden amalan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memodenkan Kod MySQL-PHP Legasi Saya Menggunakan PDO dan Penyata Disediakan?. 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