php ini_get函数使用方法详解

admin 阅读:86 2024-03-01

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
声明

1、部分文章来源于网络,仅作为参考。
2、如果网站中图片和文字侵犯了您的版权,请联系1943759704@qq.com处理!