如何使用php命令行定义多个ini设置?

Gre*_*ina 2 php ini command-line command-line-arguments

我正在尝试暂时允许脚本使用allow_url_fopenrename功能。我可以只使用一个功能,但不能同时使用两个功能。

像这样:

php -d allow_url_fopen=on rename=on <file>
Run Code Online (Sandbox Code Playgroud)

我正在使用PHP 5.6

更新资料

显然rename()是在disable_functions我的php.ini文件中(而在该文件allow_url_fopen之外已关闭),所以我假设该-d选项不会更改disable_functions指令的设置。

因此,原始问题仍然存在,而新问题是:

可以使用命令行工具启用禁用的功能吗?还是我必须重新定义整个disable_functions指令(如果可能)?

更新二

这适用于我的情况:

php -d disable_functions=fn1,fn2,etc -r 'ini_set("allow_url_fopen", "1");' <file> <args>
Run Code Online (Sandbox Code Playgroud)

您不能使用ini_set()更改disable_functions指令。如果您的php.ini文件中还有其他指令无法更改,ini_set()那么我不知道该如何解决。我的问题已解决,尽管原始问题尚未得到解答。

Rad*_*472 5

您只需-d OPTION为要定义的每个设置定义一个块。

您需要运行:

php -d allow_url_fopen=on -d rename=on <file>