我的XML看起來像這樣:PHP XML刪除元素
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<images>
<pic>
<image>54</image>
<descr>Image 1</descr>
</pic>
<pic>
<image>32</image>
<descr>Image 2</descr>
</pic>
<pic>
<image>47</image>
<descr>Image 3</descr>
</pic>
</images>
我想刪除一個元件,例如第二照片(圖像32)。使用此代碼,但它不起作用。
$xml = simplexml_load_file('../../images.xml');
$target = false;
$i = 0;
foreach ($xml->pic as $m) {
if ($m['image']=='32') { $target = $i; break; }
$i++;
}
if ($target !== false) { //$target always be $false
unset($xml->pic[$target]);
}
echo $xml->savexml();
感謝您的任何建議。
這不起作用。他對目標的原始測試很好 - 這段代碼會一直刪除第二個「pic」。 – 2012-04-17 22:45:11
+1謝謝@Sam Dufel ..只是注意到對$ i的依賴性改變了我的腳本 – Baba 2012-04-17 22:47:54