Laravel ialah rangka kerja PHP yang sangat popular yang telah digunakan secara meluas dalam pembangunan web sejak beberapa tahun kebelakangan ini. Walau bagaimanapun, apabila kami menggunakan rangka kerja Laravel untuk melaksanakan operasi pangkalan data MySQL, kami mendapati medan yang lalai kepada 0 tidak boleh disimpan dengan betul sebagai nilai nol, yang menyebabkan masalah kepada banyak pembangun.
Dalam Laravel, anda boleh melaksanakan fungsi lalai kepada 0 sebagai nilai nol dengan mengubah suai fail konfigurasi MySQL dan mengubah suai fail konfigurasi dalam projek Laravel. Di bawah ini kami akan menerangkan cara melakukannya satu persatu.
Anda boleh mengubah suai fail konfigurasi MySQL untuk mencapai nilai lalai 0 sebagai nol. Mula-mula, anda perlu membuka fail konfigurasi MySQL, yang biasanya terletak dalam direktori pemasangan MySQL dan dinamakan my.cnf atau my.ini. Kemudian tambah kod berikut pada penghujung fail:
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
Kod ini akan melumpuhkan mod ketat dalam MySQL dan menjadikan MySQL lebih fleksibel. Kemudian simpan fail dan mulakan semula perkhidmatan MySQL. Selepas menyelesaikan operasi di atas, anda boleh cuba menetapkan medan dengan nilai lalai 0 kepada null, dan medan akan disimpan sebagai nilai nol.
Cara lain ialah mengubah suai fail konfigurasi projek Laravel untuk melaksanakan nilai lalai 0 sebagai nol. Buka fail konfigurasi config/database.php dalam projek Laravel, cari maklumat sambungan MySQL yang sepadan dan tambahkan konfigurasi berikut pada tatasusunan konfigurasi:
'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'strict' => false, 'modes' => [ //'ONLY_FULL_GROUP_BY', 'STRICT_TRANS_TABLES', 'NO_ZERO_IN_DATE', 'NO_ZERO_DATE', //'ERROR_FOR_DIVISION_BY_ZERO', 'NO_ENGINE_SUBSTITUTION', ],
Antaranya, item dalam tatasusunan mod ialah MySQL ketat Beberapa pilihan dalam mod, tetapkannya kepada palsu untuk mematikan mod ketat yang sepadan. Kemudian, jalankan semula projek Laravel, dan medan yang lalai kepada 0 akan disimpan dengan betul sebagai nilai nol.
Ringkasnya, sama ada anda mengubah suai fail konfigurasi MySQL atau fail konfigurasi Laravel, anda boleh melaksanakan fungsi lalai kepada 0 sebagai nilai nol. Untuk rangka kerja seperti Laravel, pengendalian MySQL perlu lebih fleksibel dan mudah, jadi pembangun perlu menguasai beberapa kemahiran sedemikian.
Atas ialah kandungan terperinci Bagaimana untuk mengubah suai konfigurasi laravel untuk melaksanakan lalai 0 sebagai fungsi null. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!