Rumah >pembangunan bahagian belakang >tutorial php >Notis PHP: Penyelesaian malar yang tidak ditentukan
Dalam pembangunan PHP, kami sering menghadapi gesaan berikut: Notis PHP: Pemalar tidak ditentukan. Ralat ini biasanya disebabkan oleh penggunaan pemalar yang tidak ditentukan dalam kod kami. Ralat ini akan menyebabkan kod tidak berjalan dengan betul, jadi kita perlu menyelesaikannya tepat pada masanya. Artikel ini akan memperkenalkan cara menyelesaikan Notis PHP: Ralat malar yang tidak ditentukan.
1. Periksa sama ada pemalar ditakrifkan dengan betul
Pertama, kita perlu menyemak sama ada pemalar yang digunakan dalam kod ditakrifkan dengan betul. Format takrifan pemalar dalam PHP adalah seperti berikut:
define('CONSTANT_NAME', 'constant value');
di mana CONSTANT_NAME ialah nama pemalar, dan nilai pemalar ialah nilai pemalar. Jika kita menggunakan pemalar tidak ditentukan dalam kod, ia akan menyebabkan Notis PHP: Ralat pemalar tidak ditentukan.
Sebagai contoh, pemalar yang tidak ditentukan digunakan dalam kod berikut:
echo UNDEFINED_CONSTANT;
Kita perlu menyemak sama ada terdapat definisi pemalar ini dalam kod. Jika tidak, kita perlu menambah definisi tetap, contohnya:
define('UNDEFINED_CONSTANT', 'constant value');
2 Periksa sama ada nama pemalar dieja dengan betul
Kedua, kita juga perlu menyemak sama ada. nama tetap dieja dengan betul . PHP adalah sensitif huruf besar kecil Jika kita tersilap menulis surat dalam kod, ia akan menyebabkan Notis PHP: Ralat malar yang tidak ditentukan.
Sebagai contoh, kod berikut menggunakan pemalar yang namanya tidak dieja dengan betul:
echo UNDFINED_CONSTANT;
Kita perlu menyemak sama ada nama pemalar dieja dengan betul sebagai UNDEFINED_CONSTANT.
3 Sahkan sama ada pemalar berada dalam skop yang betul
Ketiga, kita juga perlu mengesahkan sama ada pemalar berada dalam skop yang betul. Jika kita menggunakan pemalar yang ditakrifkan dalam skop global dalam fungsi, ia akan menyebabkan Notis PHP: Ralat pemalar tidak ditentukan.
Sebagai contoh, dalam kod berikut, pemalar ditakrifkan dalam skop global:
define('CONSTANT_NAME', 'constant value');
Walau bagaimanapun, kami menggunakan pemalar ini dalam fungsi:
function myFunction( ){
echo CONSTANT_NAME;
}
Kita perlu mengalihkan definisi malar di dalam fungsi atau menggunakan kata kunci global untuk merujuk kepada pemalar yang ditakrifkan dalam skop global.
4 Sebelum menggunakan pemalar, sahkan sama ada ia wujud
Akhir sekali, kita boleh mengesahkan sama ada pemalar wujud sebelum menggunakannya. Kita boleh menggunakan fungsi takrif() untuk menyemak sama ada pemalar telah ditakrifkan.
Sebagai contoh, dalam kod berikut, kami menggunakan fungsi takrif() untuk menyemak sama ada pemalar wujud:
jika(ditakrifkan('CONSTANT_NAME')){
echo CONSTANT_NAME;
}else{
echo 'constant does not wujud';
}
Dengan cara ini, walaupun pemalar tidak ditakrifkan, kod tidak akan melaporkan ralat.
Ringkasan
Notis PHP: Ralat malar yang tidak ditentukan mungkin muncul dalam kod kami, tetapi terdapat beberapa kaedah yang boleh kami ambil untuk menyelesaikannya. Ralat ini boleh dielakkan selagi kita menyemak dengan teliti sama ada pemalar yang digunakan dalam kod ditakrifkan dengan betul, sama ada nama dieja dengan betul, sama ada skopnya betul dan sama ada ia wujud sebelum digunakan.
Atas ialah kandungan terperinci Notis PHP: Penyelesaian malar yang tidak ditentukan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!