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,ajax实现分页
Mar 27 PHP
fleaphp下不确定的多条件查询的巧妙解决方法
Sep 11 PHP
PHP 上传文件大小限制
Jul 05 PHP
PHP转换IP地址到真实地址的方法详解
Jun 09 PHP
php实现统计邮件大小的方法
Aug 06 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
Sep 10 PHP
使用PHPCMS搭建wap手机网站
Sep 20 PHP
深入解析PHP的Yii框架中的event事件机制
Mar 17 PHP
PHP多进程编程实例详解
Jul 19 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
Dec 21 PHP
Yaf框架封装的MySQL数据库操作示例
Mar 06 PHP
解决PHP Opcache 缓存刷新、代码重载出现无法更新代码的问题
Aug 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
使用php4加速网络传输
2006/10/09 PHP
从网上搜到的phpwind 0day的代码
2006/12/07 PHP
用PHP实现多服务器共享SESSION数据的方法
2007/03/16 PHP
Apache连接PHP后无法启动问题解决思路
2015/06/18 PHP
php根据日期或时间戳获取星座信息和生肖等信息
2015/10/20 PHP
WordPress 插件——CoolCode使用方法与下载
2007/07/02 Javascript
jquery validation验证身份证号,护照,电话号码,email(实例代码)
2013/11/06 Javascript
浅析Javascript使用include/require
2013/11/13 Javascript
使用js dom和jquery分别实现简单增删改
2014/09/11 Javascript
JavaScript 变量、作用域及内存
2015/04/08 Javascript
jquery的ajax提交form表单的两种方法小结(推荐)
2016/05/25 Javascript
自动化测试读写64位操作系统的注册表
2016/08/15 Javascript
Javascript 6里的4个新语法
2016/08/25 Javascript
React Native使用百度Echarts显示图表的示例代码
2017/11/07 Javascript
vue 项目常用加载器及配置详解
2018/01/22 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
微信小程序 腾讯地图显示偏差问题解决
2019/07/27 Javascript
[01:02:25]2014 DOTA2华西杯精英邀请赛 5 24 iG VS DK
2014/05/26 DOTA
[05:36]DOTA2 2015国际邀请赛中国区预选赛第四日TOP10
2015/05/29 DOTA
[01:48]2018DOTA2亚洲邀请赛主赛事第二日五佳镜头 VG完美团战逆转TNC
2018/04/05 DOTA
[52:20]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
Python 网络编程起步(Socket发送消息)
2008/09/06 Python
基于python的多进程共享变量正确打开方式
2018/04/28 Python
Python爬虫 批量爬取下载抖音视频代码实例
2019/08/16 Python
Python 转换RGB颜色值的示例代码
2019/10/13 Python
python实现七段数码管和倒计时效果
2019/11/23 Python
pyinstaller将含有多个py文件的python程序做成exe
2020/04/29 Python
Python实现简单的2048小游戏
2021/03/01 Python
html5开发之viewport使用
2013/10/17 HTML / CSS
英国最大的宠物食品和宠物用品网上零售商: Zooplus
2016/08/01 全球购物
中国高端鲜花第一品牌:roseonly(一生只送一人)
2017/02/12 全球购物
怎么写好自荐信
2013/10/30 职场文书
中小企业员工手册范本
2015/05/14 职场文书
同步小康驻村工作简报
2015/07/20 职场文书
Javascript的promise,async和await的区别详解
2022/03/24 Javascript
kubernetes集群搭建Zabbix监控平台的详细过程
2022/07/07 Servers