zoukankan      html  css  js  c++  java
  • php 读写xml 修改xml

    需要修改的xml

    <?xml version="1.0"?>
    <config>
        <administration>
            <adminuser>
                <user>
                    <id type="autoinc">1</id>
                    <name type="username" min="3" max="20">admin</name>
                    <passwdmd5 type="passwd" min="4" max="10">21232f297a57a5a743894a0e4a801fc3</passwdmd5>
                    <purview type="purview">super</purview>
                </user>
            </adminuser>
        </administration>
    </config>

    用php修改xml的节点

    $doc = new DOMDocument; 
    $doc->load('test.xml');
    $users = $doc->documentElement->getElementsByTagName('user');
    foreach($users as $user) 
    {
        $purviews = $user->getElementsByTagName('purview');
        $purview = $purviews->item(0);
         
        $tmpNode = $purview->cloneNode();
        $tmpNode->nodeValue = "xxx";   
        $tmpNode = $purview->parentNode->appendChild($tmpNode);
        $purview->parentNode->replaceChild($tmpNode,$purview);
        $doc->save("test1.xml"); 
    } 

     个人尝试用的simplexml 也可以修改,代码如下!,我写的较为繁琐了,不应该这样switch判断,如果有几十张  要写几十个case语句,极为不方便!

    要修改此处要从 处理之前!修改xml之前就要解决!用上面的方法可以用foreach循环!应该较为方便!

     private function write_xml($img_num) {
            //这里应该加判断xml文件是否存在,不存在就新建一个!出于给客户就已经带着xml文件,这里就不再创建!
            $xml = simplexml_load_file(__IMG_CONFIG__);
            $slider = $xml->slider;  $indexad = $xml->indexad;
            switch($img_num) {
                case 'img_1':
                    $slider->slider_1 =  $img_num . '.jpg';
                    break;
                case 'img_2':
                    $slider->slider_2 = $img_num . '.jpg';
                    break;
                case 'img_3':
                    $slider->slider_3 = $img_num . '.jpg';
                    break;
                case 'img_4':
                    $indexad->left = $img_num . '.jpg';
                    break;
                case 'img_5':
                    $indexad->right = $img_num . '.jpg';
            }
            file_put_contents(__IMG_CONFIG__, $xml->asXML());
        }
  • 相关阅读:
    杨玲 201771010133《面向对象程序设计(java)》第三周学习总结
    杨玲 201771010133《面向对象程序设计(java)》第二周学习总结
    杨玲 201771010133 《面向对象程序设计(java)》第一周学习总结
    bzoj1010 [HNOI2008]玩具装箱toy
    hdu5115 Dire Wolf
    bzoj2880
    bzoj2301 [HAOI2011]Problem b
    bzoj2440 [中山市选2011]完全平方数
    bzoj4448 情报传递
    bzoj4445 小凸想跑步
  • 原文地址:https://www.cnblogs.com/itafter/p/4121112.html
Copyright © 2011-2022 走看看