2015-03-13 55 views
2

是否有任何標準的方式來連接.ini文件的變量?
.ini文件是由PHP解析的,所以我知道可以在PHP中執行它,但它可能在.ini文件中嗎?可以在ini文件中連接嗎?

示例文件:

; definition of the server root 
[root] 
path=/var/path/to/server/root/ 
url=http://www.domain.xx/ 

而且我想定義一些 「子路徑」,我想是這樣的:

; definition of the server root 
[root] 
path=/var/path/to/server/root/ 
url=http://www.domain.xx/ 

; tree definition 
[tree] 
upload=/subpath/to/upload/directory/ 
upload_path=CONCATENATE(root.path,tree.upload) 
upload_url=CONCATENATE(root.url,tree.upload) 

這可能嗎?
如果沒有,是否有一個文件類型用於configs這是可能的?

+0

INI文件不允許包含任何邏輯,但您可以通過棘手的方式來完成。將upload_path定義爲'upload_path = root.path,tree.upload'。然後在PHP中讀取一個值,並進行一些拆分:'$ parts = explode(「,」,$ uploadPath);'現在你將擁有和數組,看起來像這樣:['root.path','tree.upload 「]。現在在一個循環foreach中($ parts as $ part){$ blocks = explode(「,」,$ part);}'用這樣的數組,你現在可以毫無問題地構建你的路徑。 – 2015-03-13 11:21:58

+0

您需要在PHP代碼中展開'CONCATENATE()'。但好主意! +1 – hek2mgl 2015-03-13 11:45:36

+0

我認爲,不幸的是:-(。@eeree,請將你的評論作爲答案來檢查它是否正確。謝謝你們。 – Honza 2015-03-13 12:23:34

回答

2

INI文件不允許您包含任何邏輯,但您可以通過棘手的方式來完成。將upload_path定義爲upload_path=root.path,tree.upload。然後在PHP讀取一個值,並做一些拆分: $parts = explode(",",$uploadPath); 現在你將有和數組,看起來像這樣:['root.path', 'tree.upload']。現在在一個循環中foreach($parts as $part) { $blocks = explode(",", $part);}有了這樣的數組,您現在可以毫無問題地構建您的路徑。 @elefantito