我在 php v7.2
中有这些错误,但在使用 php E_WARNING
v7.1
。
如何解决以下错误?
/web13/web/boutique/includes/Sites/Shop/NavigationHistory.php 第 39 行 [12-Jan-2018 22:44:20 America/Toronto] PHP 警告:使用未定义的常量 MODULE_HEADER_SELECT_TEMPLATE_STATUS - 假定为“MODULE_HEADER_SELECT_TEMPLATE_STATUS”(这将在第 356 行的 /var/www/clients/client1/web13/web/boutique/includes/Sites/Shop/Template.php 中的 PHP 的未来版本中抛出错误)
原文由 Ruzo 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是一个常见的警告,只要 PHP 检测到使用了未定义的 常量,就会出现这种警告。
下面是一个在 PHP 中定义的常量示例:
下面列出了一些可能导致该问题的情况:
上面的代码将抛出: 注意:使用未定义的常量名称 – 假定为 ‘name’ 。因为变量“name”前面没有美元符号,PHP 假定我试图引用一个名为“name”的常量变量。
在上面的示例中,我未能在
$_POST
变量“email”
周围加上引号。此代码将抛出: 注意:使用未定义的常量名称 - 假定为 ‘email’ 。要解决此问题,我显然必须执行以下操作:
根据 PHP 7.2.x 中已弃用的特性, 您不应使用未定义的常量,因为:
仅当您在使用之前声明常量值时,您才能防止这种情况
E_WARNING
。在上述问题中,没有定义
MODULE_HEADER_SELECT_TEMPLATE_STATUS
。