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 smarty模版引擎中的缓存应用
Dec 02 PHP
用sql命令修改数据表中的一个字段为非空(not null)的语句
Jun 04 PHP
Session保存到数据库的php类分享
Oct 24 PHP
CodeIgniter上传图片成功的全部过程分享
Aug 12 PHP
PHP5.5和之前的版本empty函数的不同之处
Jun 13 PHP
php中单个数据库字段多列显示(单字段分页、横向输出)
Jul 28 PHP
PHP实现简单汉字验证码
Jul 28 PHP
PHP在线书签系统分享
Jan 04 PHP
PHP MYSQL实现登陆和模糊查询两大功能
Feb 05 PHP
PHP简单实现文本计数器的方法
Apr 28 PHP
php提交过来的数据生成为txt文件
Apr 28 PHP
实例分析基于PHP微信网页获取用户信息
Nov 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 XML备份Mysql数据库
2009/05/27 PHP
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
2014/06/23 PHP
使用GDB调试PHP代码,解决PHP代码死循环问题
2015/03/02 PHP
thinkphp3.x中变量的获取和过滤方法详解
2016/05/20 PHP
php生成mysql的数据字典
2016/07/07 PHP
Laravel关联模型中过滤结果为空的结果集(has和with区别)
2018/10/18 PHP
JavaScript实现禁止后退的方法
2006/12/27 Javascript
ExtJS 2.0实用简明教程 之获得ExtJS
2009/04/29 Javascript
js里怎么取select标签里的值并修改
2012/12/10 Javascript
JS控制图片等比例缩放的示例代码
2013/12/24 Javascript
JavaScript计划任务后台运行的方法
2015/12/18 Javascript
深入解析JavaScript中的立即执行函数
2016/05/21 Javascript
如何判断出一个js对象是否一个dom对象
2016/11/24 Javascript
node.js的事件机制
2017/02/08 Javascript
jQuery中的on与bind绑定事件区别实例详解
2017/02/28 Javascript
Iphone手机、安卓手机浏览器控制默认缩放大小的方法总结(附代码)
2017/08/18 Javascript
详解Angular2学习笔记之Html属性绑定
2018/01/03 Javascript
微信小程序实现保存图片到相册功能
2018/11/30 Javascript
2019年度web前端面试题总结(主要为Vue面试题)
2020/01/12 Javascript
js面向对象之实现淘宝放大镜
2020/01/15 Javascript
Python实现类似比特币的加密货币区块链的创建与交易实例
2018/03/20 Python
Django使用redis缓存服务器的实现代码示例
2019/04/28 Python
Python中IP地址处理IPy模块的方法
2019/08/16 Python
Python中生成一个指定长度的随机字符串实现示例
2019/11/06 Python
解决python彩色螺旋线绘制引发的问题
2019/11/23 Python
Pytorch中Tensor与各种图像格式的相互转化详解
2019/12/26 Python
Windows下Anaconda和PyCharm的安装与使用详解
2020/04/23 Python
瑞典在互联网上最大的宠物商店:Animail
2020/10/31 全球购物
使用索引(Index)有哪些需要考虑的因素
2016/10/19 面试题
国庆宣传标语
2014/06/30 职场文书
秋季运动会广播稿(30篇)
2014/09/13 职场文书
个人租房协议书范本
2014/09/30 职场文书
西双版纳导游词
2015/02/03 职场文书
2015年保险公司内勤工作总结
2015/05/23 职场文书
休学证明范本
2015/06/19 职场文书
python中数组和列表的简单实例
2022/03/25 Python