Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Sambungan mysql PHP Dihentikan, dan Apakah Alternatifnya?
Apabila cuba menyambung ke pelayan MySQL daripada PHP, anda mungkin menghadapi mesej ralat yang menyatakan bahawa sambungan mysql adalah ditamatkan. Ralat ini berlaku disebabkan oleh penamatan rasmi sambungan PHP ext/mysql dalam PHP v5.5.0 dan penyingkiran berikutnya dalam PHP v7.
Pelanjutan mysql diperkenalkan dalam PHP v2.0 dan sebahagian besarnya kekal tidak berubah sejak 2006. Ia tidak mempunyai sokongan untuk ciri moden seperti urus niaga, prosedur tersimpan dan pernyataan yang disediakan, yang telah terbukti kritikal untuk menangani kelemahan keselamatan.
Untuk menangani isu ini, pertimbangkan untuk berhijrah ke salah satu daripada dua sambungan MySQL alternatif: MySQLi atau PDO_MySQL. Kedua-dua sambungan telah menjadi sebahagian daripada teras PHP sejak v5.0 dan menawarkan kelebihan yang ketara berbanding sambungan mysql yang usang.
Walaupun mungkin untuk menyekat ralat penamatan dengan mengubah suai php.ini untuk mengecualikan E_DEPRECATED, ia amat tidak digalakkan. Kaedah ini bukan sahaja menutup penyingkiran sambungan mysql yang akan berlaku tetapi juga menyekat semua ralat E_DEPRECATED lain, yang berpotensi membawa kepada isu yang tidak diduga dalam versi PHP akan datang.
Projek Baharu : Elakkan menggunakan ext/mysql dalam projek baharu dan pilih MySQLi atau PDO_MySQL sebaliknya.
Pangkalan Kod Warisan: Lakukan ujian regresi menyeluruh untuk mengenal pasti isu yang berpotensi sebelum menaik taraf PHP. Jika kaedah capaian pangkalan data dimodulasi, pertimbangkan untuk menulis semula kaedah tersebut menggunakan sambungan yang lebih baharu. Jika tidak, pertimbangkan faedah menaik taraf PHP berbanding risiko ralat penamatan.
Projek Pihak Ketiga: Semak dengan pembangun projek untuk mendapatkan pembetulan atau panduan. Menahan ralat penamatan mungkin merupakan penyelesaian sementara, tetapi ujian regresi adalah penting.
Atas ialah kandungan terperinci Mengapa Sambungan mysql PHP Dihentikan, dan Apakah Alternatifnya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!