2011-12-29 88 views
0

是否可以在PHP中設置php.ini值?最佳範圍有限?以編程方式設置php.ini值

背景:我想在include命令的持續時間內強制允許short_open_tag以方便內容編寫者的作業。實際的PHP Web應用程序在整個過程中使用長標籤(實際上,開始時是一個,結束時是一個),但對於內容文件,我希望啓用更方便的快捷方式。

的內容文件,然後通過輸出緩衝和require的組合呈現的,並在此結果用於填寫一個視圖特定的模板。 (我知道Smarty這樣的模板引擎,但我不想在這裏使用它們。)

不幸的是,這個php.ini documentation不知道如何查詢/設置配置值。

+1

'short_open_tag'具體可以[不能在運行時改變(http://stackoverflow.com/questions/ 5633301/can not-turn-off-short-open-tag-in-ini-set)了。 – mario 2011-12-29 11:42:01

+0

@mario:作爲php 5.3.0,[它可以](http://www.php.net/manual/en/ini.list.php)。 – 2011-12-29 11:47:28

+0

@Cicada:啊,好的。混合起來了。 (這對我來說只是一個不起作用的功能,只能用於五分之一的部署目標。) – mario 2011-12-29 11:49:49

回答

4

ini_set會做這項工作嗎?

string ini_set (string $varname , string $newvalue) 

還有ini_get用於查詢配置。

+0

完美,謝謝。雖然馬里奧在上面的評論中提到,但這不幸在PHP v5.2中的'short_open_tag'(我很遺憾地使用它)不起作用。所以我會使用'.htaccess'來代替。 – 2011-12-29 11:50:45

2

您可以使用ini_set()http://php.net/ini_set動態設置一些PHP配置變量。請注意,並非所有變量都可以在運行時更改,但short_open_tag可以。有關更多詳情,請參閱此處以瞭解在哪些情況下可以更改以及不能更改哪些內容:http://php.net/ini.core.php