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 flush类输出缓冲剖析
Oct 19 PHP
PHP中PDO的错误处理
Sep 04 PHP
PHP数据集构建JSON格式及新数组的方法
Nov 07 PHP
Apache中php.ini的设置方法
Feb 28 PHP
php结合正则获取字符串中数字
Jun 19 PHP
PHP结合jQuery实现找回密码
Jul 22 PHP
使用ltrace工具跟踪PHP库函数调用的方法
Apr 25 PHP
THinkPHP获取客户端IP与IP地址查询的方法
Nov 14 PHP
10个值得深思的PHP面试题
Nov 14 PHP
php中的单引号、双引号和转义字符详解
Feb 16 PHP
PHP扩展mcrypt实现的AES加密功能示例
Jan 29 PHP
用php实现分页效果的示例代码
Dec 10 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实现图片裁剪、添加水印效果代码
2014/10/01 PHP
基于thinkphp6.0的success、error实现方法
2019/11/05 PHP
phpQuery采集网页实现代码实例
2020/04/02 PHP
jQuery使用hide方法隐藏页面上指定元素的方法
2015/03/30 Javascript
jQuery使用drag效果实现自由拖拽div
2015/06/11 Javascript
js ajaxfileupload.js上传报错的解决方法
2016/05/05 Javascript
NodeJs模拟登陆正方教务
2017/04/28 NodeJs
使用JavaScript根据图片获取条形码的方法
2017/07/04 Javascript
React中jquery引用的实现方法
2017/09/12 jQuery
js 实现在2d平面上画8的方法
2018/10/10 Javascript
详解用vue2.x版本+adminLTE开源框架搭建后台应用模版
2019/03/15 Javascript
Vue函数式组件的应用实例详解
2019/08/30 Javascript
Vue发布订阅模式实现过程图解
2020/04/30 Javascript
python网络编程示例(客户端与服务端)
2014/04/24 Python
python爬虫入门教程--利用requests构建知乎API(三)
2017/05/25 Python
在Python中增加和插入元素的示例
2018/11/01 Python
python实现对任意大小图片均匀切割的示例
2018/12/05 Python
python写入数据到csv或xlsx文件的3种方法
2019/08/23 Python
tensorflow 报错unitialized value的解决方法
2020/02/06 Python
Python Django路径配置实现过程解析
2020/11/05 Python
python 基于opencv实现高斯平滑
2020/12/18 Python
浅谈Python xlwings 读取Excel文件的正确姿势
2021/02/26 Python
美国专营婴幼儿用品的购物网站:buybuy BABY
2017/01/01 全球购物
美国保健品专家:Life Extension
2018/05/04 全球购物
Charles & Keith欧盟:新加坡时尚品牌
2019/08/01 全球购物
大学生通用个人的自我评价
2014/02/10 职场文书
意向协议书范本
2014/04/23 职场文书
我的梦中国梦演讲稿
2014/04/23 职场文书
高中学生期末评语
2014/04/25 职场文书
加强作风建设演讲稿
2014/10/24 职场文书
2014年法院个人工作总结
2014/12/17 职场文书
捐款感谢信
2015/01/20 职场文书
2016年秋季运动会加油稿
2015/12/21 职场文书
2016年心理学教育培训学习心得体会
2016/01/12 职场文书
MySQL InnoDB ReplicaSet(副本集)简单介绍
2021/04/24 MySQL
如何通过简单的代码描述Angular父组件、子组件传值
2022/04/07 Javascript