Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Mengapa fungsi mysql_ PHP tidak digunakan lagi?

Ekstensi mysql kuno dan telah ada sejak PHP 2.0, dirilis 15 tahun yang lalu (!!); yang merupakan binatang yang jelas berbeda dari PHP modern yang mencoba melepaskan praktik buruk di masa lalunya. Ekstensi mysql adalah konektor tingkat rendah yang sangat mentah ke MySQL yang tidak memiliki banyak fitur kenyamanan dan karenanya sulit untuk diterapkan dengan benar dengan cara yang aman; karena itu buruk untuk noobs. Banyak pengembang tidak memahami injeksi SQL dan API mysql cukup rapuh sehingga sulit untuk mencegahnya, bahkan jika Anda menyadarinya. Itu penuh dengan keadaan global (misalnya lewat koneksi implisit), yang membuatnya mudah untuk menulis kode yang sulit dipelihara. Karena sudah tua, mungkin sulit untuk mempertahankan tingkat inti PHP.

Ekstensi mysqli jauh lebih baru dan memperbaiki semua masalah di atas. PDO juga agak baru dan memperbaiki semua masalah itu juga, ditambah lagi.

Karena alasan ini* ekstensi mysql akan dihapus di masa mendatang. Itu melakukan tugasnya di masa kejayaannya, agak buruk, tetapi berhasil. Waktu telah berlalu, praktik terbaik telah berkembang, aplikasi menjadi lebih kompleks dan membutuhkan API yang lebih modern. mysql sedang dihentikan, jalani saja.

Mengingat semua ini, tidak ada alasan untuk tetap menggunakannya kecuali inersia.

* Ini adalah alasan ringkasan akal sehat saya; untuk keseluruhan cerita resmi, lihat di sini:https://wiki.php.net/rfc/mysql_deprecation

Kutipan pilihan dari dokumen itu sebagai berikut:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mencari array JSON di MySQL?

  2. Codeigniter db->update() VS MySQL native UPDATE Baris yang terpengaruh:0

  3. cara kerja pengindeksan B-tree di mysql

  4. Sinyal simpanan pos Django dipanggil dua kali meskipun uid

  5. Hasil berbeda di sqlfiddle.com 5.5.30 dan MariaDB 5.5.31