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


Posted in PHP onMarch 04, 2015

本文实例讲述了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程序设计有所帮助。

PHP 相关文章推荐
使用sockets:从新闻组中获取文章(二)
Oct 09 PHP
PHP 网络开发详解之远程文件包含漏洞
Apr 25 PHP
PHP中调用ASP.NET的WebService的代码
Apr 22 PHP
php header Content-Type类型小结
Jul 03 PHP
析构函数与php的垃圾回收机制详解
Oct 28 PHP
PHP实现图片裁剪、添加水印效果代码
Oct 01 PHP
PHP解密Unicode及Escape加密字符串
May 17 PHP
PHP文件下载实例代码浅析
Aug 17 PHP
php字符串操作常见问题小结
Oct 11 PHP
php多进程中的阻塞与非阻塞操作实例分析
Mar 04 PHP
详解php反序列化
Jun 10 PHP
关于PHP求解三数之和问题详析
Nov 09 PHP
php用ini_get获取php.ini里变量值的方法
Mar 04 #PHP
浅谈PHP中单引号和双引号到底有啥区别呢?
Mar 04 #PHP
php查询mysql大量数据造成内存不足的解决方法
Mar 04 #PHP
在win系统安装配置 Memcached for PHP 5.3 图文教程
Mar 03 #PHP
PHP获取POST数据的几种方法汇总
Mar 03 #PHP
php函数实现判断是否移动端访问
Mar 03 #PHP
php中instanceof 与 is_a()区别分析
Mar 03 #PHP
You might like
图书管理程序(三)
2006/10/09 PHP
PHP求小于1000的所有水仙花数的代码
2012/01/10 PHP
分享一个PHP数据流应用的简单例子
2012/06/01 PHP
基于OpenCart 开发支付宝,财付通,微信支付参数错误问题
2015/10/01 PHP
Yii2增删改查之查询 where参数详细介绍
2016/08/08 PHP
JQUERY实现左侧TIPS滑进滑出效果示例
2013/06/27 Javascript
使用HTML5+Boostrap打造简单的音乐播放器
2016/08/05 Javascript
JavaScript中的ajax功能的概念和示例详解
2016/10/17 Javascript
angular.js+node.js实现下载图片处理详解
2017/03/31 Javascript
Angularjs中的验证input输入框只能输入数字和小数点的写法(推荐)
2017/08/16 Javascript
JavaScript 中使用 Generator的方法
2017/12/29 Javascript
解决layui前端框架 form表单,table表等内置控件不显示的问题
2018/08/19 Javascript
详解如何使用node.js的开发框架express创建一个web应用
2018/12/20 Javascript
React性能优化系列之减少props改变的实现方法
2019/01/17 Javascript
微信小程序左滑删除实现代码实例
2019/09/16 Javascript
微信小程序如何实现五星评价功能
2019/10/15 Javascript
Vue实现购物车实例代码两则
2020/05/30 Javascript
python pickle 和 shelve模块的用法
2013/09/16 Python
Python使用scrapy采集时伪装成HTTP/1.1的方法
2015/04/08 Python
浅谈python为什么不需要三目运算符和switch
2016/06/17 Python
Python实现的FTP通信客户端与服务器端功能示例
2018/03/28 Python
如何利用Python模拟GitHub登录详解
2019/07/15 Python
Python使用import导入本地脚本及导入模块的技巧总结
2019/08/07 Python
计算pytorch标准化(Normalize)所需要数据集的均值和方差实例
2020/01/15 Python
Python响应对象text属性乱码解决方案
2020/03/31 Python
飞利浦美国官网:Philips美国
2020/02/28 全球购物
what is the difference between ext2 and ext3
2015/08/25 面试题
前台文员个人求职信范文
2014/01/05 职场文书
酒店端午节促销方案
2014/02/18 职场文书
大学生新学期计划书
2014/04/28 职场文书
计算机应用应届生求职信
2014/07/12 职场文书
寒暑假实习证明书模板
2014/11/29 职场文书
golang import自定义包方式
2021/04/29 Golang
pytorch训练神经网络爆内存的解决方案
2021/05/22 Python
Pytorch DataLoader shuffle验证方式
2021/06/02 Python
Flask使用SQLAlchemy实现持久化数据
2021/07/16 Python