2011-12-29 159 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