What does the PHP error message quot;Notice: Use of undefined constantquot; mean?(PHP 错误信息“注意:使用未定义的常量是什么意思?意思是?)
问题描述
PHP 正在日志中写入此错误:注意:使用未定义的常量".
PHP is writing this error in the logs: "Notice: Use of undefined constant".
日志错误:
PHP Notice: Use of undefined constant department - assumed 'department' (line 5)
PHP Notice: Use of undefined constant name - assumed 'name' (line 6)
PHP Notice: Use of undefined constant email - assumed 'email' (line 7)
PHP Notice: Use of undefined constant message - assumed 'message' (line 8)
相关代码行:
$department = 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]);
这是什么意思,为什么我会看到它?
What does it mean and why am I seeing it?
推荐答案
你应该引用你的数组键:
You should quote your array keys:
$department = 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']);
按原样,它正在寻找名为 department
、name
、email
、message
等的常量.当它没有找到这样的常量时,PHP(奇怪地)将其解释为字符串('department' 等).显然,如果您稍后确实定义了这样一个常量,这很容易破坏(尽管使用小写常量是不好的风格).
As is, it was looking for constants called department
, name
, email
, message
, etc. When it doesn't find such a constant, PHP (bizarrely) interprets it as a string ('department', etc). Obviously, this can easily break if you do defined such a constant later (though it's bad style to have lower-case constants).
这篇关于PHP 错误信息“注意:使用未定义的常量"是什么意思?意思是?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:PHP 错误信息“注意:使用未定义的常量"是什么意思?意思是?


- SoapClient 设置自定义 HTTP Header 2021-01-01
- Laravel 仓库 2022-01-01
- 如何定位 php.ini 文件 (xampp) 2022-01-01
- Mod使用GET变量将子域重写为PHP 2021-01-01
- 没有作曲家的 PSR4 自动加载 2022-01-01
- PHP Count 布尔数组中真值的数量 2021-01-01
- 带有通配符的 Laravel 验证器 2021-01-01
- Oracle 即时客户端 DYLD_LIBRARY_PATH 错误 2022-01-01
- 正确分离 PHP 中的逻辑/样式 2021-01-01
- 从 PHP 中的输入表单获取日期 2022-01-01