我正在新的生产服务器上设置我的(Wordpress)解决方案。我现在发现PHP函数define
无效。
我在functions.php
:
define('INCLUDE_DIR', $_SERVER['DOCUMENT_ROOT'] . '/wp-content/themes/storelocator/include/');
测试以下代码:
if (!defined('INCLUDE_DIR'))
echo ' NOT SET! ';
输出NOT SET
。
根据this page,我在include
语句中使用常量正确。
functions.php
中的其余代码运行正常。我查过了。
这是由于某些PHP配置吗?我正在使用PHP v5.3.8
更新:
define()
位于functions.php
文件的顶部
if
语句位于some-file.php
的最顶部。
我非常确定在functions.php
之前运行some-file.php
。
更新
我似乎得到了这个错误,因为我的PHP文件底部有空行。我删除了空行,现在它似乎工作: - /
答案 0 :(得分:1)
您必须在之前调用define()
函数,然后检查常量是否为defined()
。如果您这样做(尝试将define
电话放在defined
电话的正上方,那么我就没有理由认为这不起作用。
答案 1 :(得分:1)
我遇到了完全相同的问题,并通过从常量名称中删除下划线来解决它。希望这会有所帮助。