• 技术文章 >php教程 >PHP源码

    php 站点使用XML文件做配置类

    2016-06-08 17:32:29原创354

    要用到,在网站上找了一个,然后自己整理成一个类..



    php
    /*
    *PHP获取和设置XML节点,用于修改和读取站点配置文件
    *2008-4-3
    *LIQUAN
    *eg.get config
    *$c = new Configuration(''config.xml'');
    *echo( $c->TemplateDirectory." " );
    *
    * set config
    * $c = new Configuration(''config.xml'');
    * $c->TemplateDirectory=''test'';
    * $c->save();
    */

    class Configuration
    {
    private $configFile;
    private $items=array();

    //构造函数
    function __construct($configFile)
    {
    $this->configFile=$configFile;
    $this->parse();
    }

    //获取属性
    function __get($id)
    {
    return $this->items[$id];
    }

    //设置属性
    function __set($key,$value)
    {
    $this->$items[$key]=$value;
    }

    //解析XML文件保存到数组
    function parse()
    {
    $doc=new DOMDocument();
    $doc->load($this->configFile);
    $cn=$doc->getElementsByTagName(''config'');
    $nodes=$cn->item(0)->getElementsByTagName(''*'');
    foreach($nodes as $node)
    {
    $this->items[$node->nodeName]=$node->nodeValue;
    }
    }

    //保存XML文件
    function save()
    {
    $doc=new DOMDocument();
    $doc->formatOutput=true;

    $r=$doc->createElement(''config'');
    $doc->appendChild($r);

    foreach($this->items as $k=>$v)
    {
    $keyName=$doc->createElement($k);
    $keyName->appendChild($doc->createTextNode($v));
    $r->appendChild($keyName);
    }
    copy($this->configFile,$this->configFile.".bak");

    $doc->save($this->configFile);
    }

    }


    ?>



    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    专题推荐:nbsp gt configFile this doc
    上一篇:用simpleXML获取php.net的RSS 下一篇:服务器不允许执行exe,但php程序需要用到exe,有没有办法?

    相关文章推荐

    • PHP禁止图片文件的被盗链函数• 使用simple_html_dom抓取oschina的新闻资讯• 解决json_encode 函数中文被编码成 null的办法• php学习笔记之面向对象编程• php中常用的函数集合

    全部评论我要评论

  • 取消发布评论发送
  • 1/1