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
-
-
-
-
-
-
-
-
- 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”;
- ?>
-
- 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');
-
- ini_set('display_errors',0);
- echo ini_get('display_errors');
ini_get_all()获取所有配置信息,代码如下:
-
- print_r(ini_get_all());
ini_restore()恢复配置信息到原始值,代码如下:
- echo ini_get('display_errors');
-
- ini_set('display_errors',0);
- ini_restore('display_errors');
- echo ini_get('display_errors');
|