我正在建立我的(Wordpress)解決方案在新的生產服務器上的重要工作。我現在發現PHP函數define
不工作。PHP定義不註冊常量
我有這行代碼在我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
UPDATE:
define()
爲functions.php
文件的最頂端。
if
聲明位於some-file.php
的最頂端。
我很確定functions.php
在some-file.php
之前運行。
UPDATE
看來,因爲我在我的PHP文件的底部有空行我得到這個錯誤。我刪除空行,現在它似乎工作: -/
你確定在包含/需要functions.php之前,你做了你的定義()檢查?假設你在這樣一個簡單的廣泛使用的函數中發現了一個PHP錯誤,正在推動一些事情。 –
你可以顯示哪些包含的functions.php與檢查相關嗎? – Patrick
@Marc B - 'functions.php'在任何其他WP模板文件之前運行,對吧?所以'functions.php'應該在我使用'defined()'的'some.template.php'文件之前運行。 – Steven