2013-07-01 61 views
5

我正在使用Composer進行模塊依賴性管理(喜歡使用autoload.php而不是大量的包含,並且需要!)。使用Composer包含PHP定義()

我想包含一個PHP文件,它位於根Composer目錄之外(用於安全性),其憑據存儲在defines()中。

這不是工作,composer.json

{ 
    "autoload": { 
    "classmap": ["../credentials.php"] 
    } 
} 

credentials.php

define('RYAN','BRODIE'); 

test.php的

require_once __DIR__.'/../vendor/autoload.php'; 
echo RYAN; 

結果在Notice: Use of undefined constant RYAN。如果Composer的自動加載器僅用於Class包含,那麼我會很感激任何黑客(因爲它)使這項工作。

+0

使用類常量,而不是全局常量是一個選項 –

回答

12

該方法應該可以正常工作,但是您需要使用files而不是classmap;

{ 
    "autoload": { 
     "files": [ "../constants.php" ] 
    } 
} 
+0

真棒工作一種享受,將接受時,我可以,感謝湯姆:)不知道我怎麼錯過了這個在文檔 –

+1

2.5年後,我記得接受! –