- 论坛徽章:
- 0
|
如何用PHP向XML文件添加数据(二)
用php自带的dom xml 函数,我把你的xml数据稍微修改了一下:
- <?xml version='1.0' standalone='yes'?>;
- <students>;<student id='19803001'>;
- <name>;
- <lastname>;Johnson</lastname>;
- <firstname>;Jack</firstname>;
- </name>;
- <email>;ego008@mmm.com</email>;
- </student>;
- </students>;
复制代码
增加一个节点的php代码:
- <?php
- $student_file = file_get_contents("./student_data.xml");
- if(!$dom = domxml_open_mem($student_file)) {
- echo "Error while parsing the document\n";
- exit;
- }
- //得到数据文件的根节点<students>;
- $students_node=$dom->;first_child();
- //建立一个student的节点
- $new_student=$dom->;create_element("student");
- //设定id的属性
- $new_student->;set_attribute('id','1372635');
- //创建新student的各个节点
- $new_name=$dom->;create_element("name");
- $new_firstname_txt = $dom->;create_text_node("Wang");
- $new_firstname=$dom->;create_element("firstname");
- $new_lastname_txt = $dom->;create_text_node("Dali");
- $new_lastname=$dom->;create_element("lasttname");
- //把这些节点组装起来
- $new_student->;append_child($new_name);
- $new_name->;append_child($new_firstname);
- $new_lastname->;append_child($new_lastname_txt);
- $new_name->;append_child($new_lastname);
- $new_firstname->;append_child($new_firstname_txt);
- //把新的节点接到根节点上
- $students_node->;append_child($new_student);
- //输出来看看
- echo('<pre>;');
- echo htmlentities($dom->;dump_mem(true));
- ?>;
复制代码 |
|