簡體   English   中英

如何使用PHP重命名xml的根節點並刪除其子節點-入門

[英]How to rename xml's root node and remove it's child node using PHP - Beginner

這是XML FILE:products.xml

<?xml version="1.0"?>
<TABLE-RECORDS>
<EXPORT-RECORDS>
<PRODUCT>
  <PRODUCTS_NAME>Name of product</PRODUCTS_NAME>
  <PRODUCTS_DESCRIPTION>Description of Product</PRODUCTS_DESCRIPTION>
  <PRODUCTS_IMAGE>any.jpg</PRODUCTS_IMAGE>
  <PRODUCTS_PRICE>1.00</PRODUCTS_PRICE>
  <PRODUCTS_MODEL>ANY</PRODUCTS_MODEL>
  <ITEM_BRANDNAME>ANY</ITEM_BRANDNAME>
  <ITEM_UPC>11111111</ITEM_UPC>
  <ITEM_HEIGHT>1.00</ITEM_HEIGHT>
  <ITEM_LENGTH>1.00</ITEM_LENGTH>
  <ITEM_DIAMETER>1.00</ITEM_DIAMETER>
  <PRODUCTS_WEIGHT>1.00</PRODUCTS_WEIGHT>
  <MANUFACTURERS_NAME>any manufacturer</MANUFACTURERS_NAME>
  <ITEM_VENDOR_NUMBER>Vendor</ITEM_VENDOR_NUMBER>
  <PRODUCTS_QUANTITY>1</PRODUCTS_QUANTITY>
  <DATE_RECIEVED>0000-00-00 00:00:00</DATE_RECIEVED>
  <PROP_PACKAGING>box</PROP_PACKAGING>
  <PRODUCT_CLASS>any class</PRODUCT_CLASS>
  <PRODUCTS_TYPE>any type</PRODUCTS_TYPE>
</PRODUCT>
</EXPORT-RECORDS>
</TABLE-RECORDS>

我想將“ TABLE-RECORDS”更改為“ PRODUCTS”,然后刪除“ EXPORT-RECORDS”標簽。

我已經嘗試過使用SimpleXML,但是我只能使用getName()來獲取標記的名稱,而DOMDocument根本不適合我。

任何幫助/指導將不勝感激!

如果要將節點移動到另一個位置,則可能需要嘗試這些功能。 http://www.php.net/manual/de/class.domdocument.php

//Load your xml into a DomDocument
$dom= new DOMDocument(); 
$dom->loadXML($xml); 

// Get the node in question (probably within a loop and remove from source
// This sample is missing the loop part where you select/load the $node!
$node = $node->parentNode->removeChild($node);

// Now select your target node and then mov
$node = $targetNode->insertBefore($node);

您可以從那里工作並自己解決缺失的部分嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM