首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 新增 XML 節點完整實作:建立元素、屬性與節點掛載

     編輯:PHP 綜合知識

承接 DOM 基礎操作,示範如何在既有 XML 中新增完整的學生記錄:建立元素節點、設定屬性、賦予文字內容、逐層掛載至 DOM 樹,最後持久化儲存。

完整程式碼範例

<?php
// 1. 建立 DOMDocument 並載入 XML
$xmldoc = new DOMDocument();
$xmldoc->load("class.xml");

// 2. 取得根節點 <class>
$root = $xmldoc->getElementsByTagName("class")->item(0);

// 3. 建立新學生節點結構
$stu_node = $xmldoc->createElement("student");
$stu_node->setAttribute("id", "大美女"); // 設定屬性

// 3.1 建立子節點並設定內容
$name = $xmldoc->createElement("name", "大喬");
$sex  = $xmldoc->createElement("sex", "女");
$age  = $xmldoc->createElement("age", "25");

// 3.2 子節點掛載至 student
$stu_node->appendChild($name);
$stu_node->appendChild($sex);
$stu_node->appendChild($age);

// 4. student 掛載至根節點
$root->appendChild($stu_node);

// 5. 儲存變更(可存新檔避免覆蓋原檔)
// $xmldoc->save("class.xml");
?>

關鍵 API 解析

方法用途
createElement($tag, $value)建立元素節點,第二參數可直接設定文字內容
setAttribute($name, $value)為元素新增/修改屬性
appendChild($node)將子節點掛載至父節點,維持樹狀結構
save($filename)將 DOM 樹序列化寫入檔案

節點掛載順序圖解

<class>          ← $root
  └─ <student id="大美女">  ← $stu_node
       ├─ <name>大喬</name>  ← $name
       ├─ <sex>女</sex>      ← $sex
       └─ <age>25</age>      ← $age

實務建議

  • 新增前先用 XPath 檢查是否已存在相同 ID,避免重複資料。
  • 大量新增時,建議批次處理或改用資料庫,XML 適合小型資料集。
  • 儲存前可用 $xmldoc->formatOutput = true; 讓輸出 XML 縮排易讀。

掌握「建立 → 設定屬性/內容 → 掛載 → 儲存」四步驟,即可靈活擴充 XML 資料結構。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved