PHP 的几个配置文件函数


Posted in PHP onDecember 21, 2006

php 的配置函数就是几个ini_*的函数,主要是针对配置文件的操作,其实就四个函数:ini_get、ini_set、ini_get_all、ini_restore。个人感觉最有用的就是ini_set和ini_get。

    * 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 相关文章推荐
PHP XML操作的各种方法解析(比较详细)
Jun 17 PHP
thinkphp实现多语言功能(语言包)
Mar 04 PHP
php实现图片转换成ASCII码的方法
Apr 03 PHP
PHP中使用GD库绘制折线图 折线统计图的绘制方法
Nov 09 PHP
详解WordPress中提醒安装插件以及隐藏插件的功能实现
Dec 25 PHP
CI框架中$this->load->library()用法分析
May 18 PHP
Thinkphp5.0自动生成模块及目录的方法详解
Apr 17 PHP
ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作示例
Jun 13 PHP
php适配器模式简单应用示例
Oct 23 PHP
laravel5.1 ajax post 传值_token示例
Oct 24 PHP
PHP xpath提取网页数据内容代码解析
Jul 16 PHP
PHP7 foreach() 函数修改
Mar 09 PHP
使用 MySQL 开始 PHP 会话
Dec 21 #PHP
PHP 编程请选择正确的文本编辑软件
Dec 21 #PHP
PHP 模板高级篇总结
Dec 21 #PHP
PHP函数utf8转gb2312编码
Dec 21 #PHP
小偷PHP+Html+缓存
Dec 20 #PHP
PR值查询 | PageRank 查询
Dec 20 #PHP
转PHP手册及PHP编程标准
Dec 17 #PHP
You might like
PHP中遍历stdclass object的实现代码
2011/06/09 PHP
PHP操作MongoDB GridFS 存储文件的详解
2013/06/20 PHP
深入讲解PHP Session及如何保持其不过期的方法
2015/08/18 PHP
翻译整理的jQuery使用查询手册
2007/03/07 Javascript
jQuery源码分析-04 选择器-Sizzle-工作原理分析
2011/11/14 Javascript
js获取时间(本周、本季度、本月..)
2013/11/22 Javascript
js 操作select与option(示例讲解)
2013/12/20 Javascript
jQuery 鼠标经过(hover)事件的延时处理示例
2014/04/14 Javascript
javascript鼠标右键菜单自定义效果
2020/12/08 Javascript
JS中关于事件处理函数名后面是否带括号的问题
2016/11/16 Javascript
BootStrap table删除指定行的注意事项(笔记整理)
2017/02/05 Javascript
基于JavaScript 性能优化技巧心得(分享)
2017/12/11 Javascript
vue源码学习之Object.defineProperty对象属性监听
2018/05/30 Javascript
uni-app实现点赞评论功能
2019/11/25 Javascript
python集合类型用法分析
2015/04/08 Python
使用Python编写一个模仿CPU工作的程序
2015/04/16 Python
详解python上传文件和字符到PHP服务器
2017/11/24 Python
Python通过Pygame绘制移动的矩形实例代码
2018/01/03 Python
python 日志增量抓取实现方法
2018/04/28 Python
python中csv文件的若干读写方法小结
2018/07/04 Python
Python实现将HTML转成PDF的方法分析
2019/05/04 Python
Pandas之DataFrame对象的列和索引之间的转化
2019/06/25 Python
Python机器学习算法库scikit-learn学习之决策树实现方法详解
2019/07/04 Python
python sorted方法和列表使用解析
2019/11/18 Python
Python模拟登录之滑块验证码的破解(实例代码)
2019/11/18 Python
使用Keras 实现查看model weights .h5 文件的内容
2020/06/09 Python
基于canvas的骨骼动画的示例代码
2018/06/12 HTML / CSS
IGK Hair官网:喷雾、洗发水、护发素等
2020/11/03 全球购物
澳大利亚排名第一的露营和户外设备在线零售商:Outbax
2020/05/06 全球购物
回门宴答谢词
2014/01/13 职场文书
村委会贫困证明
2014/01/14 职场文书
国际贸易专业个人职业生涯规划
2014/02/15 职场文书
体育比赛口号
2014/06/09 职场文书
作风建设剖析材料
2014/10/06 职场文书
linux下导入、导出mysql数据库命令的实现方法
2021/05/26 MySQL
关于JavaScript轮播图的实现
2021/11/20 Javascript