php ini_get函数使用方法详解
ini_get函数是获取php中环境变量的值了,当然ini_get能获取到的是要我们php中允许它获取它才可以获取,否则是无法获取到的,ini_get只是获取环境变量值它并不能修改环境变量值.
例如:php.ini文件中包含了以下的设置,代码如下:
register_globals = Off
post_max_size = 8M
PHP部分我们可以这样获取,代码如下:
<?php echo 'display_errors = ' . ini_get('display_errors') . "\n"; echo 'register_globals = ' . ini_get('register_globals') . "\n"; echo 'post_max_size = ' . ini_get('post_max_size') . "\n"; echo 'post_max_size+1 = ' . (ini_get('post_max_size')+1) . "\n"; echo 'post_max_size in bytes = ' . return_bytes(ini_get('post_max_size')); ?>
如果想获取整个php.ini里的变量值,我们可以用ini_get的加强函数 ini_get_all(),ini_get_all()函数以数组的形式返回整个php的环境变量,当然如果你只是想了解下php的配置信息用 phpinfo();
接着向下看,php手册中有一个例子,代码如下:
<?php /* Our php.ini contains the following settings: display_errors = On register_globals = Off post_max_size = 8M */ echo ‘display_errors = ‘ . ini_get(’display_errors’) . “\n”; //显示错误是否打开 echo ‘register_globals = ‘ . ini_get(’register_globals’) . “\n”; //全局变量是否打开 echo ‘post_max_size = ‘ . ini_get(’ post_max_size’) . “\n”; //最多能提交的文件大小 echo ‘post_max_size+1 = ‘ . (ini_get(’post_max_size’)+1) . “\n”; ?>//开源代码phpfensi.com //输出: display_errors = 1 register_globals = 0 post_max_size = 8M post_max_size+1 = 9
PHP配置函数ini_get()主要是为了获取配置文件,可以方便你很多操作,比如你想操作字符串过滤,但是又不清楚magic_quotes_gpc有没有打开,所以你就可以这样写一个函数,代码如下:
/* 字符串过滤函数 */ function stringFilter($str) { if (ini_get(’magic_quotes_gpc)’) { return $str; } else { return addslashes($str); } }
当然,如果你无法知道你的全局变量是否打开,也可以定制这样的函数,变量检测函数,代码如下:
function getGetVar($var) { if (ini_set(’register_gobals’)) { return $var; } else { return $_GET['var']; } }
当然,你可以用PHP配置函数ini_get()做很多用途,自己慢慢体会.
补充:ini_get()获取配置参数,ini_set()设置配置参数,代码如下:
echo ini_get('display_errors'); //1 //动态修改php.ini配置信息,脚本执行后失效 ini_set('display_errors',0); echo ini_get('display_errors');//0
ini_get_all()获取所有配置信息,代码如下:
//打印所有配置信息,巨多。。。 print_r(ini_get_all());
ini_restore()恢复配置信息到原始值,代码如下:
echo ini_get('display_errors'); //1 //动态修改php.ini配置信息,脚本执行后失效 ini_set('display_errors',0); ini_restore('display_errors'); echo ini_get('display_errors');//1
评论列表