PHP最常用的ini函数分析 针对PHP.ini配置文件


Posted in PHP onApril 22, 2010

* ini_get():获取配置文件的选项值

这个函数相信很多人都使过,就是获取配置文件中某一个选项的值,如果是true值就返回1,如果是false值就返回0,字符串就返回字符串。

比如手册中的例子:

<?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"; ?>

输出:

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

这个函数主要是为了获取配置文件,可以方便你很多操作。比如你想操作字符串过滤,但是又不清楚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']; } }

当然,你可以做很多用途,自己慢慢体会。

* ini_set函数:设置php.ini中的某些变量值

这个函数是设置选项中的值,在执行函数后生效,脚本结束的时候,这个设置也失效。不是所有的选项都能被改函数设置的。具体那些值能够设置,可以查看手册中的列表。

就是能够设置php.ini中的选项值比如,display_error选项关闭了,但是你要显示程序中的错误信息,方便你调试程序,那么就可以使用这个函数:

ini_set("display_errors", "On");

那么在你这个页面的程序都会显示错误信息了,而且你还可以使用error_reporting来设置显示的错误信息级别。

如果你需要增加脚本执行时间,那么可以设置:

ini_set("max_execution_time", "180");

那么脚本执行时间就由默认的30秒变为180秒,当然,你也可以使用set_time_limit()来设置。

其实你把ini_set和ini_get结合使的话,非常好。比如你想在配置文件里添加自己的包含文件路径,但是你有没有权限更改php.ini,那么你可以结合两个函数:

ini_set('include_path',ini_get('include_path').':/your_include_dir:');

* 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 ) ... )

* ini_restore: 回复配置文件默认的值

就是回复配置文件默认的值,当你使用ini_set设置后可以使用它来恢复。

PHP 相关文章推荐
不用mod_rewrite直接用php实现伪静态化页面代码
Oct 04 PHP
php中获取远程客户端的真实ip地址的方法
Aug 03 PHP
解析centos中Apache、php、mysql 默认安装路径
Jun 25 PHP
VB中的RasEnumConnections函数返回632错误解决方法
Jul 29 PHP
PHP 导出Excel示例分享
Aug 18 PHP
thinkphp常见路径用法分析
Dec 02 PHP
PHP实现的简单缓存类
Jul 29 PHP
php搜索文件程序分享
Oct 30 PHP
PHP创建word文档的方法(平台无关)
Mar 29 PHP
Symfony2获取web目录绝对路径、相对路径、网址的方法
Nov 14 PHP
Yii框架实现的验证码、登录及退出功能示例
May 20 PHP
php微信公众号开发之二级菜单
Oct 20 PHP
php allow_url_include的应用和解释
Apr 22 #PHP
php strcmp使用说明
Apr 22 #PHP
PHP 加密解密内部算法
Apr 22 #PHP
PHP 根据IP地址控制访问的代码
Apr 22 #PHP
收集的二十一个实用便利的PHP函数代码
Apr 22 #PHP
让PHP开发者事半功倍的十大技巧小结
Apr 20 #PHP
php快速url重写 更新版[需php 5.30以上]
Apr 20 #PHP
You might like
php读取javascript设置的cookies的代码
2010/04/12 PHP
php 数据库字段复用的基本原理与示例
2011/07/22 PHP
PHP持久连接mysql_pconnect()函数使用介绍
2012/02/05 PHP
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
2014/01/03 PHP
PHP实现导出excel数据的类库用法示例
2016/10/15 PHP
JavaScript 对象、函数和继承
2009/07/07 Javascript
学习ExtJS form布局
2009/10/08 Javascript
javascript sudoku 数独智力游戏生成代码
2010/03/27 Javascript
实用的Jquery选项卡TAB示例代码
2013/08/28 Javascript
JS合并数组的几种方法及优劣比较
2014/09/19 Javascript
再分享70+免费的jquery 图片滑块效果插件和教程
2014/12/15 Javascript
node.js中的fs.lchmodSync方法使用说明
2014/12/16 Javascript
js实现卡片式项目管理界面UI设计效果
2015/12/08 Javascript
JavaScript数据结构与算法之集合(Set)
2016/01/29 Javascript
JavaScript预解析及相关技巧分析
2016/04/21 Javascript
JavaScript String 对象常用方法总结
2016/04/28 Javascript
用AngularJS的指令实现tabs切换效果
2016/08/31 Javascript
JS实现本地存储信息的方法(基于localStorage与userData)
2017/02/18 Javascript
JS实现瀑布流布局
2017/10/21 Javascript
vue-cli 默认路由再子路由选中下的选中状态问题及解决代码
2018/09/06 Javascript
vue interceptor 使用教程实例详解
2018/09/13 Javascript
JS实现可切换图片的幻灯切换效果示例
2019/05/24 Javascript
在layui中使用form表单监听ajax异步验证注册的实例
2019/09/03 Javascript
[38:30]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第一场2
2014/05/24 DOTA
Python实现读取目录所有文件的文件名并保存到txt文件代码
2014/11/22 Python
python email smtplib模块发送邮件代码实例
2018/04/26 Python
对Python模块导入时全局变量__all__的作用详解
2019/01/11 Python
pyQt5实时刷新界面的示例
2019/06/25 Python
python celery分布式任务队列的使用详解
2019/07/08 Python
python对Excel的读取的示例代码
2020/02/14 Python
Python如何实现线程间通信
2020/07/30 Python
HTML5 3D衣服摇摆动画特效
2016/03/17 HTML / CSS
致标枪运动员广播稿
2014/02/06 职场文书
保护母亲河倡议书
2014/04/14 职场文书
教师网络培训心得体会
2016/01/09 职场文书
Nginx禁止ip访问或非法域名访问
2022/04/07 Servers