首頁 >後端開發 >php教程 >PHP對XML內容進行修改和刪除實例

PHP對XML內容進行修改和刪除實例

墨辰丷
墨辰丷原創
2018-05-31 10:26:061436瀏覽

這篇文章給大家主要介紹了利用PHP對XML內容進行修改和刪除的原理和方法,文中透過範例程式碼介紹的很詳細,相信對大家的理解和學習很有幫助,有興趣的朋友們可以參考借鑒,下面來一起看看吧。

本文主要介紹的是PHP對XML內容進行修改與刪除的方法,下面話不多說,我們來看實例

原理圖如下

#範例程式碼

example.xml

<?xml version="1.0" encoding="utf-8"?>
<root>
 <book id="1">
  <title>title1</title>
 </book>
 <book id="2">
  <title>title2</title>
 </book>
 <book id="3">
  <title>title3</title>
 </book>
 <book id="4">
  <title>title4</title>
 </book>
 <book id="5">
  <title>title5</title>
 </book>
</root>

首先遍歷一下該xml文檔

<?php $doc = new DOMDocument(); $doc->load(&#39;example.xml&#39;); $books = $doc -> getElementsByTagName("book"); //遍历 foreach ($books as $book) { echo $book->getAttribute(&#39;id&#39;)."-"; echo $book->getElementsByTagName("title")->item(0)->nodeValue; echo "<br>"; }

執行結果為:

1-title1 
2-title2 
3-title3 
4-title4 
5-title5

#修改:

##

<?php

 $doc = new DOMDocument();
 $doc->load(&#39;example.xml&#39;);

 $books = $doc -> getElementsByTagName("book");
 //遍历
 foreach ($books as $book) {
  //将id=3的title设置为33333
  if($book->getAttribute(&#39;id&#39;)==3){
   echo $book->getAttribute(&#39;id&#39;)."-";
   echo $book->getElementsByTagName("title")->item(0)->nodeValue="33333";
   echo "<br>";
  }
 }
 //对文件做修改后,一定要记得重新sava一下,才能修改掉原文件
 $doc -> save(&#39;example.xml&#39;);

修改之後為:

<?xml version="1.0" encoding="utf-8"?>
<root>
 <book id="1">
  <title>title1</title>
 </book>
 <book id="2">
  <title>title2</title>
 </book>
 <book id="3">
  <title>33333</title>
 </book>
 <book id="4">
  <title>title4</title>
 </book>
 <book id="5">
  <title>title5</title>
 </book>
</root>

##刪除動作:


<?php

 $doc = new DOMDocument();
 $doc->load(&#39;example.xml&#39;);

 $root = $doc -> documentElement;//根标签 
 $books = $doc -> getElementsByTagName("book");
 //遍历
 foreach ($books as $book) {
  //将id=4的删除
  if($book->getAttribute(&#39;id&#39;)==4){
   $root->removeChild($book);
  }
 }
 //对文件做修改后,一定要记得重新sava一下,才能修改掉原文件
 $doc -> save(&#39;example.xml&#39;);

刪除後的結果為:


<?xml version="1.0" encoding="utf-8"?>
<root>
 <book id="1">
  <title>title1</title>
 </book>
 <book id="2">
  <title>title2</title>
 </book>
 <book id="3">
  <title>33333</title>
 </book>

 <book id="5">
  <title>title5</title>
 </book>
</root>

以上就是本文的全部內容,希望對大家的學習有所幫助。


相關推薦:

PHP實作標點符號正規替換為空格的方法


PHP實作計算抽獎機率演算法


php# jQuery實作的三級導航選單

以上是PHP對XML內容進行修改和刪除實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn