设置php第二个配置(php.ini文件)



我想设置我自己的(php2.ini)文件,其中只有几行必须覆盖第一个php.ini设置-仅用于这些行。

所以我开始在谷歌上搜索,似乎我需要的是parse_ini_file函数。

好的。现在,在index.php中,我有:

parse_ini_file("php2.ini");
phpinfo();
exit();

但是php2.ini中的那些设置没有加载。。。

试图查看php2.ini文件是否为read-it并且是,因为如果我设置了parse_ini_file("php2-not-exist.ini"),它会"告诉"我找不到该文件。因此,php2.ini文件被读取,但设置不会被覆盖。

php2.ini文件的下一行中有:

error_log = "errors.log"
display_errors = "0"
max_execution_time = "300"
upload_max_filesize = "60M"
post_max_size = "60M"
date.timezone = "Europe/Bucharest"
default_charset = "UTF-8"
mbstring.internal_encoding = "UTF-8"
mbstring.http_output = "UTF-8"
mbstring.encoding_translation = "On"
mbstring.func_overload = "6"

尝试让这个文件像post_max_size = "60M"一样只使用一行,但仍然不会覆盖一般的php.ini设置。

我在这里错过了什么?

我知道有些设置只能设置,而且只能使用php.ini文件配置。因此,使用parse_ini_file开关设置第二个文件是php中的一个函数。。。有些地方不正确,因为有些服务器不允许您编辑通用的php.ini文件。那么,如果您不能访问通用的php.ini文件,php如何让您设置第二个php.ini文件呢?我不知道这是否与我的问题有关。我只是说,也许这就是问题所在。

现在,我正在将wamp与php5.5.12一起使用。我只想当我上传我的网站时,一切都完成了。我知道有些托管服务器允许你有第二个php.ini文件,必须上传到public_html或任何文件夹中。这就是为什么我想设置我的php2.ini文件。当我上传到主机时,要清理网站。

谢谢。

php parse_ini_file()函数将ini文件读取到关联数组中。它不会像php.ini文件那样将它们设置为设置。

没有像这样覆盖服务器设置的便利功能。您可能需要的是.user.ini(前导点很重要)文件:

自PHP 5.3.0以来,PHP支持按目录配置INI文件。

和:

除了主php.ini文件外,php还会扫描每个目录中的ini文件,从请求的php文件的目录开始,一直扫描到当前文档根目录(如$_SERVER['document_root']中设置的)。如果PHP文件在文档根目录之外,则只扫描其目录。

有关该功能的完整文档,请参阅http://php.net/manual/en/configuration.file.per-user.php.

请注意,此处只能更改设置的子集:

只有模式为PHP_INI_PERDIR和PHP_INI_USER的INI设置才会在.USER.INI-style INI文件中被识别。

最新更新