竹笋

首页 » 问答 » 灌水 » 程序员手册修改phpini的几种方法
TUhjnbcbe - 2023/1/8 17:33:00

修改php.ini配置文件的几个函数先做一下介绍:

php中修改php配置文件(php.ini)的函数主要有四个函数:ini_get、ini_set、ini_get_all、ini_restore。其中ini_set和ini_get比较常用,下面分别做介绍。

(1)ini_get()

用来获取配置文件的选项值.

这个函数很多人都使过,其实就是获取配置文件中的某一个选项值,是true值返回1,是false值返回0,是字符串就返回的是字符串。

如果无法知道你的全局变量是否打开了,那么可以定制以下这样的函数:

functiongetGetVar($var)

{

if(ini_set(register_gobals)){

return$var;

}else{

return$_GET[var];

}

(2)ini_set函数

设置php.ini中的某些变量值.

这个函数是设置选项中的值,执行函数后就可以生效了,脚本结束的时候,这个设置也就跟着失效。不是全部的选项都能被改函数设置的,这个自己要明确。那么具体是那些值能设置,可以查看手册,手册可以在网上搜到。

就是能够设置php.ini中的选项值比如,display_error选项关闭了,但是你要显示程序中的错误信息,方便你调试程序,那么就可以使用这个函数:

ini_set("display_errors","On");

那么在你这个页面的程序都会显示错误信息了,而且你还可以使用error_reporting来设置显示的错误信息级别。

如果你需要增加脚本执行时间,那么可以设置:

ini_set("max_execution_time","");

那么脚本执行时间就由默认的30秒变为秒,当然,你也可以使用set_time_limit()来设置。

其实你把ini_set和ini_get结合使的话,非常好。比如你想在配置文件里添加自己的包含文件路径,但是你有没有权限更改php.ini,那么你可以结合两个函数:

ini_set(include_path,ini_get(include_path).:/your_include_dir:);

(3)ini_get_all

获取所有的设置选项变量

把所有选项值以数组的形式返回,方便你当phpinfo()无法使用的时候来使用。

1.通过php.ini修改配置:

[root

/usr/local/php/etc]#/usr/local/php/bin/php-ini

grepphp.iniConfigurationFile(php.ini)Path=>/usr/local/php-5.3.29/lib[root

/usr/local/php/etc]#vim/usr/local/php-5.3.29/lib/php.ini

2.通过ini_set修改配置:

ini_set只能针对有效选项进行修改,

3.通过php-fpm.conf修改配置:

通过php_value/php_flag,php_admin_value/php_admin_flag对php.ini配置进行修改;

该修改方法只会在php-fpm进程请求中生效;

二者的区别在于前者修改指令可以被ini_set覆盖,后者修改指令不能通过ini_set覆盖;

4.自5.3.3起,通过web服务器修改配置:

如下通过nginx.conf修改配置:

set$php_value"pcre.backtrack_limit=";"$php_value\npcre.recursion_limit="fastcgi_paramPHP_VALUE$php_valuefastcgi_paramPHP_ADMIN_VALUE"open_basedir=/var/

1
查看完整版本: 程序员手册修改phpini的几种方法