Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Saya Mendapat Ralat 'Penggunaan Pemalar Tidak Tertakrif' dalam PHP?

Mengapa Saya Mendapat Ralat 'Penggunaan Pemalar Tidak Tertakrif' dalam PHP?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-26 08:22:10783semak imbas

Why Am I Getting a

Penggunaan Pemalar Tidak Ditakrifkan: Memahami Ralat PHP

Ralat "Penggunaan pemalar tidak ditentukan" dalam PHP menunjukkan bahawa anda cuba merujuk pemalar yang belum ditakrifkan dalam skop semasa kod anda. Pemalar ialah nilai dinamakan yang kekal tidak berubah sepanjang pelaksanaan skrip dan dilambangkan dengan kata kunci const atau dengan ditulis dalam ALL_CAPS.

Penjelasan Ralat

Dalam kod anda :


$department = mysql_real_escape_string($_POST[jabatan]);
$name = mysql_real_escape_string($_POST[name]);
$email = mysql_real_escape_string($_POST[email]);
$message = mysql_real_escape_string($_POST[message]);

Anda menggunakan kekunci tatasusunan ("jabatan," "nama," "e-mel," "mesej") sebagai argumen kepada mysql_real_escape_string () fungsi. Walau bagaimanapun, kunci ini tidak ditakrifkan sebagai pemalar, jadi PHP mentafsirkannya sebagai rentetan.

Resolusi

Untuk menyelesaikan ralat ini, sertakan kunci tatasusunan anda dalam petikan:


$jabatan = mysql_real_escape_string($_POST['department']);
$name = mysql_real_escape_string($_POST['name']);
$email = mysql_real_escape_string($_POST['email']);
$message = mysql_real_escape_string($_POST['message']);

Dengan berbuat demikian, anda mentakrifkan kekunci tatasusunan sebagai pembolehubah dan menghapuskan keperluan untuk penggunaan pemalar tidak ditentukan.

Tambahan Maklumat

Sebelum PHP 8, penggunaan pemalar yang tidak ditentukan menghasilkan notis. Walau bagaimanapun, dari PHP 8 dan seterusnya, ia mencetuskan ralat. Perubahan ini dibuat untuk meningkatkan kualiti kod dan mengelakkan potensi isu yang mungkin timbul daripada tafsiran pemalar tidak ditentukan sebagai rentetan.

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat 'Penggunaan Pemalar Tidak Tertakrif' dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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