亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何編輯 XML DOMDocument 的特定節點值?

如何編輯 XML DOMDocument 的特定節點值?

PHP
至尊寶的傳說 2023-10-01 16:03:19
我有以下 xml 文件:<products><info><productName>Chocolate Cake</productName> <productDescription>uieovbeveb</productDescription><quantity>1</quantity><stock>22</stock><price>2.99,12.99</price><size>200 ml</size><type>India,colombia</type></info><info><productName>watermelon</productName><productDescription>fr</productDescription><quantity>rf</quantity><stock>34</stock><price>4</price><size>4</size><type>5</type></info></products>我想訪問其中一個產品的 ProductDescription 標簽之一并更改其值,但它不起作用。這是我到目前為止所嘗試的:if (isset($_POST['editProduct'])) {$xml = new DomDocument("1.0", "UTF-8");$xml->load('./data/productDB.xml');$productName = $_POST['productName'];$productDescription = $_POST['productDescription'];$quantity = $_POST['quantity'];$stock = $_POST['stock'];$price = $_POST['price'];$size = $_POST['size'];$type = $_POST['type'];$sizetoString = implode(",", $size);$typetoString = implode(",", $type);$pricetoString = implode(",", $price);$products = $xml->getElementsByTagName('info');foreach($products as $product) {    $nameOfProduct = $product->getElementsByTagName('productName')->item(0)->nodeValue;    if($nameOfProduct == $productName) {        $product->getElementsByTagName('productDescription')->item(0)->nodeValue="";        $product->getElementByTagName('productDescription')->item(0)->appendChild($product->createTextNode($productDescription));    }}$xml->save("./data/productDB.xml");
查看完整描述

1 回答

?
紫衣仙女

TA貢獻1839條經驗 獲得超15個贊

試試這個例子:


// load the document

$products = simplexml_load_file('test.xml');


// loop through each product and change description

foreach($products as $product) {

    $product->productDescription = 'new description';

}


// save the new xml

$products->asXML('test.xml');


查看完整回答
反對 回復 2023-10-01
  • 1 回答
  • 0 關注
  • 86 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號