首页 > 开发 > PHP > 正文

php中get_cfg_var()和ini_get()的用法及区别

2024-05-04 23:31:52
字体:
来源:转载
供稿:网友

这篇文章主要介绍了php中get_cfg_var()和ini_get()的用法及区别,实例分析了get_cfg_var()和ini_get()函数的区别与使用技巧,需要的朋友可以参考下

本文实例讲述了php中get_cfg_var()和ini_get()的用法及区别。分享给大家供大家参考。具体分析如下:

php里get_cfg_var()和ini_get()都是取得配置值的函数,当你需要获取php.ini里的某个选项的配置值时,这两个函数都都可以使用,得到的结果是一样的。

不过,get_cfg_var()和ini_get()也有一些区别,这便是本文要谈的内容。

在说这两个函数区别之前,我们先来了解一下它们的含义及用法。

有关ini_get()的用法,前面有一篇《php用ini_get获取php.ini里变量值的方法》,这里不再累赘。

下面主要说说get_cfg_var()函数。

get_cfg_var: 取得PHP的配置选项值。

语法: string get_cfg_var(string varname);

返回值: 字符串

内容说明: 若正确取得目前 PHP 配置选项 varname,则返回变量值。失败则返回 false。

下面说说这两个函数的区别

其实,这两个函数的区别是很鲜明,并且易懂易学易用。

get_cfg_var(): 取的值是配置文件中的值

ini_get(): 则取的当前值

比如

 

 
  1. ini_set('SMTP''192.160.0.24'); // 改变 SMTP 的当前值 
  2. print get_cfg_var('SMTP'); // 返回 localhost 
  3. print ini_get('SMTP'); // 返回 192.160.0.24 

代码

 

 
  1. <?php 
  2. /* 
  3. Our php.ini contains the following settings: 
  4. display_errors = On 
  5. register_globals = Off 
  6. post_max_size = 8M 
  7. */ 
  8. echo 'display_errors = ' . ini_get('display_errors') . "/n"
  9. echo 'register_globals = ' . ini_get('register_globals') . "/n"
  10. echo 'post_max_size = ' . ini_get('post_max_size') . "/n"
  11. //POST提交内容限制: 
  12. echo 'post_max_size+1 = ' . (ini_get('post_max_size')+1) . "/n";  
  13. echo 'allow_url_fopen = ' . (ini_get('allow_url_fopen')) . "/n"
  14. //使用URL打开文件: 
  15. ?> 

输出:

 

 
  1. display_errors = 1 
  2. register_globals = 0//在我机器上什么也没有 
  3. post_max_size = 8M 
  4. post_max_size+1 = 9 
  5. allow_url_fopen = 1 

代码

 

 
  1. <?php 
  2. /* 
  3. Our php.ini contains the following settings: 
  4. display_errors = On 
  5. register_globals = Off 
  6. post_max_size = 8M 
  7. */ 
  8. echo 'display_errors = ' . get_cfg_var('display_errors') . "/n"
  9. echo 'register_globals = ' . get_cfg_var('register_globals') . "/n"
  10. echo 'post_max_size = ' . get_cfg_var('post_max_size') . "/n"
  11. //POST提交内容限制: 
  12. echo 'post_max_size+1 = ' . (get_cfg_var('post_max_size')+1) . "/n"
  13. echo 'allow_url_fopen = ' . (get_cfg_var('allow_url_fopen')) . "/n"
  14. //使用URL打开文件: 
  15. ?> 

输出

 

 
  1. display_errors = 1 
  2. register_globals = 
  3. post_max_size = 8M 
  4. post_max_size+1 = 9 
  5. allow_url_fopen = 1 

另外,这里提一提ini_get_all()函数,这个函数与ini_get()不同,ini_get_all()函数是以数组的形式返回整个php的环境变量,不过它的用法也很简单。

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

例子:

 

 
  1. <?php  
  2. $inis = ini_get_all();  
  3. print_r($inis);  
  4. ?> 

输出:

 

 
  1. Array (  
  2. [allow_call_time_pass_reference] => Array  
  3. (  
  4. [global_value] => 1  
  5. [local_value] => 1  
  6. [access] => 6  
  7. )  
  8. [allow_url_fopen] => Array  
  9. (  
  10. [global_value] => 1  
  11. [local_value] => 1  
  12. [access] => 7  
  13. )  
  14. … 

希望本文所述对大家的php程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表