码迷,mamicode.com
首页 > 其他好文 > 详细

DOM

时间:2014-10-22 06:17:02      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   ar   strong   sp   文件   div   on   

【DOM:Document Object Model】

文档-对象-模型,核心思想是把一个xml文件看成对象模型,然后通过对象的方式来进行增删改查(crud:c[create]r[read]u[update]d[delete])操作。

【CreateDOM.php】

<?php 

    //xml文件的增删改
    
    //1. 创建DOMDocument
    $xmldoc = new DOMDocument();
    //2.加载xml文件
    $xmldoc -> load(‘classes.xml‘);

    //3.添加一个学生信息
    //(1)取出根节点
    $rootNode = $xmldoc -> getElementsByTagName(‘class‘) -> item(0);
    //(2)创建一个学生节点
    $stuNode = $xmldoc -> CreateElement(‘student‘);
    //echo $stuNode -> nodeType;
    //**************添加属性节点********************
    $stuNode -> setAttribute(‘id‘, ‘a003‘);
    $stuNode -> setAttribute(‘address‘, ‘福建‘);
    $stuNode -> setAttribute(‘bro‘, ‘a001‘);
    //**********************************************
    
    //(3)通过对象创建名字节点
    $stuNameNode = $xmldoc -> createElement(‘name‘);
    //把值赋给名字节点
    $stuNameNode -> nodeValue = ‘zhangsan‘;
    //把名字节点挂载到学生节点下
    $stuNode -> appendChild($stuNameNode);

    //创建年龄节点并挂载到学生节点下
    $stuAgeNode = $xmldoc -> createElement(‘age‘);
    $stuAgeNode -> nodeValue = ‘33‘;
    $stuNode -> appendChild($stuAgeNode);

    //创建介绍节点并挂载到学生节点下
    $stuIntroNode = $xmldoc -> createElement(‘intro‘);
    $stuIntroNode -> nodeValue = ‘张三很牛‘;
    $stuNode -> appendChild($stuIntroNode);

    //把新的学生节点挂载到根节点下
    $rootNode -> appendChild($stuNode);

    //重新保存回xml文件中
    $xmldoc -> save("classes.xml");

    
?>

【DeleteDOM.PHP】

<?php

    $xmldoc = new DOMDocument();
    $xmldoc -> load("classes.xml");

    //取出根节点
    //$rootNode = $xmldoc -> getElementsByTagName(‘class‘) -> item(0);
    
    //删除第3个学生
    //1.先找到全部学生
    $stusNode = $xmldoc -> getElementsByTagName(‘student‘);
    //2.在全部学生里找到该学生
    $stu3Node = $stusNode -> item(2);
    //3.内存中删除该学生
    //通过根节点删除该学生
    //$rootNode -> removeChild($stu3);
    //通过该学生的父节点删除该学生
    $stu3Node -> parentNode -> removeChild($stu3Node);

    //通过对象更新保存文件
    $xmldoc -> save("classes.xml");

?>

【UpdateDOM.php】

<?php 

    //更新某个节点值
    //把第一个学生的年龄+10
    
    //1.创建DOMDocument
    $xmldoc = new DOMDocument();
    //2.加载xml文件
    $xmldoc -> load(‘classes.xml‘);

    //更新步骤
    //(1)找到该学生
    $stusNode = $xmldoc -> getElementsByTagName(‘student‘);
    $stu1Node = $stusNode -> item(0);

    $stu1NameNode = $stu1Node -> getElementsByTagName(‘age‘) -> item(0);
    $stu1NameNode -> nodeValue += 10;

    $xmldoc -> save(‘classes.xml‘);

?>

 

DOM

标签:style   blog   color   ar   strong   sp   文件   div   on   

原文地址:http://www.cnblogs.com/ayee/p/4042098.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!