PHP中操作ini配置文件的方法


Posted in PHP onApril 25, 2013

PHP操作ini配置文件

<?php
//写ini文件
function write_ini_file($assoc_arr, $path, $has_sections=FALSE)
{
    $content = "";
    if ($has_sections)
    {
        foreach ($assoc_arr as $key=>$elem)
        {
            $content .= "[".$key."]\n";
            foreach ($elem as $key2=>$elem2)
            {
                if(is_array($elem2))
                {
                    for($i=0;$i<count($elem2);$i++)
                    {
                        $content .= $key2."[] = \"".$elem2[$i]."\"\n";
                    }
                }
                else if($elem2=="") $content .= $key2." = \n";
                else $content .= $key2." = \"".$elem2."\"\n";
            }
        }
    }
    else
    {
        foreach ($assoc_arr as $key=>$elem)
        {
            if(is_array($elem))
            {
                for($i=0;$i<count($elem);$i++)
                {
                    $content .= $key2."[] = \"".$elem[$i]."\"\n";
                }
            }
            else if($elem=="") $content .= $key2." = \n";
            else $content .= $key2." = \"".$elem."\"\n";
        }
    }
    if (!$handle = fopen($path, 'w'))
    {
        return false;
    }
    if (!fwrite($handle, $content))
    {
        return false;
    }
    fclose($handle);
    return true;
}
//用法
//
$sampleData = array(
                'first' => array(
                    'first-1' => 1,
                    'first-2' => 2,
                    'first-3' => 3,
                    'first-4' => 4,
                    'first-5' => 5,
                ),
                'second' => array(
                    'second-1' => 1,
                    'second-2' => 2,
                    'second-3' => 3,
                    'second-4' => 4,
                    'second-5' => 5,
                ));
write_ini_file($sampleData, './data.ini', true);
//读ini文件
public function readini($name)
{
    if (file_exists(SEM_PATH.'init/'.$name))
    {
        $data = parse_ini_file(SEM_PATH.'init/'.$name,true);
        if ($data)
        {
        return $data;
        }
    }
    else
    {
        return false;
    }
}

如果在python中处理,需要将PHP生成的配置文件值两边的双引号去掉。也就是把上面生成ini配置文件函数的\"去掉即OK。
PHP 相关文章推荐
PHP中动态HTML的输出技术
Oct 09 PHP
php中比较简单的导入phpmyadmin生成的sql文件的方法
Jun 28 PHP
支持中文字母数字、自定义字体php验证码代码
Feb 27 PHP
深入理解:XML与对象的序列化与反序列化
Jun 08 PHP
浅析PHP Socket技术
Aug 02 PHP
PHP开发框架laravel安装与配置教程
Mar 13 PHP
Yii中Model(模型)的创建及使用方法
Dec 28 PHP
php通过执行CutyCapt命令实现网页截图的方法
Sep 30 PHP
基于thinkPHP框架实现留言板的方法
Oct 17 PHP
PHP针对伪静态的注入总结【附asp与Python相关代码】
Aug 01 PHP
Laravel中9个不经常用的小技巧汇总
Apr 16 PHP
PHP Swoole异步MySQL客户端实现方法示例
Oct 24 PHP
基于python发送邮件的乱码问题的解决办法
Apr 25 #PHP
关于php正则匹配汉字的方法介绍
Apr 25 #PHP
PHP中如何调用webservice的实例参考
Apr 25 #PHP
Php中用PDO查询Mysql来避免SQL注入风险的方法
Apr 25 #PHP
php中防止SQL注入的最佳解决方法
Apr 25 #PHP
Apache下禁止php文件被直接访问的解决方案
Apr 25 #PHP
PHP笔记之:日期函数的使用介绍
Apr 24 #PHP
You might like
php字符串函数学习之strstr()
2015/03/27 PHP
深入理解PHP类的自动载入机制
2016/09/16 PHP
php实现当前页面点击下载文件的实例代码
2016/11/16 PHP
php封装的pdo数据库操作工具类与用法示例
2019/05/08 PHP
Aster vs Newbee BO3 第三场2.18
2021/03/10 DOTA
JS getStyle获取最终样式函数代码
2010/04/01 Javascript
html页面显示年月日时分秒和星期几的两种方式
2013/08/20 Javascript
使用javascript实现页面定时跳转总结篇
2013/09/21 Javascript
js使用eval解析json(js中使用json)
2014/01/17 Javascript
JavaScript判断表单中多选框checkbox选中个数的方法
2015/08/17 Javascript
基于JavaScript实现移动端点击图片查看大图点击大图隐藏
2015/11/04 Javascript
JavaScript常用基础知识强化学习
2015/12/09 Javascript
jquery获取css的color值返回RGB的方法
2015/12/18 Javascript
Seajs 简易文档 提供简单、极致的模块化开发体验
2016/04/13 Javascript
AngularJS ng-bind 指令简单实现
2016/07/30 Javascript
js 创建对象 经典模式全面了解
2016/08/16 Javascript
基于cssSlidy.js插件实现响应式手机图片轮播效果
2016/08/30 Javascript
解决vue2.x中数据渲染以及vuex缓存的问题
2017/07/13 Javascript
手把手教你使用vue-cli脚手架(图文解析)
2017/11/08 Javascript
vue源码入口文件分析(推荐)
2018/01/30 Javascript
JS实现生成由字母与数字组合的随机字符串功能详解
2018/05/25 Javascript
js中Object.defineProperty()方法的不详解
2018/07/09 Javascript
vue组件开发之用户无限添加自定义填写表单的方法
2018/08/28 Javascript
Node.js JSON模块用法实例分析
2019/01/04 Javascript
js实现坦克移动小游戏
2019/10/28 Javascript
详谈pandas中agg函数和apply函数的区别
2018/04/20 Python
Python爬虫文件下载图文教程
2018/12/23 Python
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
2019/04/26 Python
Python CVXOPT模块安装及使用解析
2019/08/01 Python
python sklearn常用分类算法模型的调用
2019/10/16 Python
解决python Jupyter不能导入外部包问题
2020/04/15 Python
Python Web项目Cherrypy使用方法镜像
2020/11/05 Python
linux面试题参考答案(11)
2012/05/01 面试题
3.15国际消费者权益日主题活动活动总结
2014/03/16 职场文书
房屋出租委托书格式
2014/09/23 职场文书
党的群众路线教育实践活动整改落实情况自查报告
2014/10/28 职场文书