繁体   English   中英

PHP将常量prints / concats命名为变量名,而不是值

[英]PHP named constant prints/concats as the variable name, not value

我有一个旧的osCommerce网站,它是PHP4,现在在PHP5上运行。 define()命名常量被错误地求值:

$string = '<a href="http://www.oscommerce.com" target="_blank">' . BOX_ENTRY_SUPPORT_SITE . '</a><br>';

将显示为BOX_ENTRY_SUPPORT_SITE ,不放在值BOX_ENTRY_SUPPORT_SITE

需要在php.ini进行某些更改吗?

不,AFAIK常数行为未更改。

该常量很可能没有定义; 尝试找到它的定义位置,然后查看脚本是否正在加载文件(即:按要求或包含)

将osCommerce网站从PHP4放到PHP5时,我从未遇到过这个问题。

最有可能的是,该定义未正确被define()正确。 默认行为 (放宽了错误报告的状态)是在未找到常量时显示该常量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM