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

 更新时间:2015年03月04日 10:31:34   作者:weiyangcau  
这篇文章主要介绍了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():  则取的当前值

比如

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

代码

<?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";
//POST提交内容限制:
echo 'post_max_size+1 = ' . (ini_get('post_max_size')+1) . "\n"; 
echo 'allow_url_fopen = ' . (ini_get('allow_url_fopen')) . "\n";
//使用URL打开文件:
?>

输出:

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

代码

<?php
/*
Our php.ini contains the following settings:
display_errors = On
register_globals = Off
post_max_size = 8M
*/
echo 'display_errors = ' . get_cfg_var('display_errors') . "\n";
echo 'register_globals = ' . get_cfg_var('register_globals') . "\n";
echo 'post_max_size = ' . get_cfg_var('post_max_size') . "\n";
//POST提交内容限制:
echo 'post_max_size+1 = ' . (get_cfg_var('post_max_size')+1) . "\n";
echo 'allow_url_fopen = ' . (get_cfg_var('allow_url_fopen')) . "\n";
//使用URL打开文件:
?>

输出

display_errors = 1
register_globals =
post_max_size = 8M
post_max_size+1 = 9
allow_url_fopen = 1

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

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

例子:

<?php 
$inis = ini_get_all(); 
print_r($inis); 
?>

输出:

Array ( 
[allow_call_time_pass_reference] => Array 
( 
[global_value] => 1 
[local_value] => 1 
[access] => 6 
) 
[allow_url_fopen] => Array 
( 
[global_value] => 1 
[local_value] => 1 
[access] => 7 
) 
…
)

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

相关文章

  • 深入PHP5中的魔术方法详解

    深入PHP5中的魔术方法详解

    本篇文章是对PHP5中的魔术方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • php url地址栏传中文乱码解决方法集合

    php url地址栏传中文乱码解决方法集合

    php地址栏传中文$_GET下来后乱码,urlencode和urldecode,iconv,base64_encode等方法,整理基本是常用的了。
    2010-06-06
  • PHP自定义函数格式化json数据示例

    PHP自定义函数格式化json数据示例

    这篇文章主要介绍了PHP自定义函数格式化json数据的方法,结合实例形式分析了php通过自定义函数进行字符串与数组的遍历、转换、计算等操作实现json数据格式化的功能,需要的朋友可以参考下
    2016-09-09
  • 让的PHP代码飞起来的40条小技巧(提升php效率)

    让的PHP代码飞起来的40条小技巧(提升php效率)

    这是在网上看到的一篇帖子,讲的自己感觉比较实用,很注重细节【呵呵,当然是指对像我一样的业余PHPer而言了】,又担心以后找不到原帖子,所以就转了过来。
    2010-04-04
  • PHP使用mkdir创建多级目录的方法

    PHP使用mkdir创建多级目录的方法

    这篇文章主要介绍了PHP使用mkdir创建多级目录的方法,结合实例详细分析了PHP中mkdir函数的使用技巧,需要的朋友可以参考下
    2015-12-12
  • 如何直接访问php实例对象中的private属性详解

    如何直接访问php实例对象中的private属性详解

    这篇文章主要给大家介绍了关于如何直接访问php实例对象中private属性的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-10-10
  • php 方便水印和缩略图的图形类

    php 方便水印和缩略图的图形类

    这是个方便做水印和缩略图的类,简化一些操作,按照一些CSS的习惯写参数
    2009-05-05
  • PHP 截取字符串 分别适合GB2312和UTF8编码情况

    PHP 截取字符串 分别适合GB2312和UTF8编码情况

    主要包括截取GB2312中文字符串,截取utf8编码的多字节字符串,UTF-8、GB2312都支持的汉字截取函数,BugFree 的字符截取函数,推荐使用字符串截取功能的朋友。
    2009-02-02
  • php生成缩略图质量较差解决方法代码示例

    php生成缩略图质量较差解决方法代码示例

    这篇文章主要介绍了php生成缩略图质量较差解决方法代码示例,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • 有关JSON以及JSON在PHP中的应用

    有关JSON以及JSON在PHP中的应用

    简 单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序。
    2010-04-04

最新评论