-
-
/*
-
-
-
- 孫悟空姓名>
- 孫行者姓名>
- 123 年齡>
- 介紹>
- 學生>
- 白骨精姓名>
- 140年齡>
- 介紹內容介紹>
- 學生>
- 班級>
- */
-
複製程式碼
2、php程式碼
-
-
/**
- *DOMElement XML
- *http://bbs.it-home.org
- */
- $xmldoc = new DOMDocument('1.0' , 'UTF-8');
- $xmldoc->load('datas.xml');
$itemsNodeList = $xmldoc->getElementsbyTagName('學生');
- $itemElement = $itemsNodeList->item(0);//得到第一個完整的學生資訊節點
- $itemChildsNodeList = $itemElement->getElementsbyTagName('名字');//得到子節點“名字”,也許有多個名字
- $itemChildNode = $itemChildsNodeList->item(0);//得到第一個名字節點
- echo $itemChildNode->nodeValue;//輸出節點值
-
//封裝成函數
- $nodeArr = array('名字', '年齡', '介紹');
- function getNodeVal($xmldoc, $itemsName, $nodeArr){
- $items = $xmldoc->getElementsByTagName($itemsName);
- for($i=0; $i length; $i++){
- $item = $items->item($i);
- foreach($nodeArr as $node){
- $data[$i][] = $item->getElementsByTagName($node)->item(0)->nodeValue;
- }
- }
- return $data;
- }
$data = getNodeVal($xmldoc, '學生', $nodeArr);
- print_r($data);
//新增節點
- $xmldoc = new DOMDocument('1.0', 'UTF-8');
- $xmldoc->load('datas.xml');
- $items = $xmldoc->getElementsByTagName('班級')->item(0);//根節點
- $student = $xmldoc->createElement('學生');//建立新的學生節點
- $stu_name = $xmldoc->createElement('名字','張三');
- $stu_age = $xmldoc->createElement('年齡','15');
- $stu_intro = $xmldoc ->createElement('介紹','動手能力強且成績穩定');
- $items->appendChild($student);
- $student->appendChild($stu_name);
- $student- >appendChild($stu_age);
- $student->appendChild($stu_intro);
- $bytes = $xmldoc->save('datas.xml');
- echo ($bytes)? "寫入了: $bytes 位元組" : '儲存失敗';
//刪除節點
- $xmldoc = new DOMDocument('1.0', 'UTF-8');
- $xmldoc->load('datas.xml');
- $student = $xmldoc->getElementsByTagName('學生')->item(2);//直接找到要刪除的節點
- $student ->parentNode->removeChild($student);//父節點的刪除方法
- $xmldoc->save('datas.xml');
//修改節點值
- $student = $xmldoc->getElementsByTagName('學生')->item(2);
- $student->getElementsByTagName('年齡')->item(0)->nodeValue += 10;
- $student->setAttribute('id', '110');
- $xmldoc->save('datas.xml');
//應用Xpath 找出節點 p>
$xml = new DOMDocument('1.0', 'UTF-8');
- $xml->load('dat.xml');
- $xpath = new DOMXPath( $xml);
- $nodeList = $xpath->query('/aaa/bbb/ddd/fff');
- echo $nodeList->item(0)->nodeValue;
//SimpleXML 類別操作xml
- /*
1001
- 200元
- 大明
-
天龍八部
1002
- 321元
- 張三
- 笑傲江湖
1004
- 182元
- 李四
- 讀者
- * /
- $xml = simplexml_load_file('books.xml');
- $books = $xml->book;
- echo $books[1]->title . $books[1]['house' ];//直接指向第二本
- foreach($xml as $item){
- echo $item->title,' ',$item['house'],'
';
- }
- ?>
-
複製程式碼
|
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31