1
我希望你能幫助我在這一個:PHP,SimpleXML的,刪除:請告訴我爲什麼第一種變體不工作
我想通過取消設置刪除XML節點。我有兩種不同的方式來完成這個任務,但只有一個正在工作。請告訴我最新的差異或爲什麼只有第二個變體正在工作。
因此,當使用第一個變體時,print_r()函數會返回應該被刪除的圖像'Hansio'的整個xml文件。但是當使用第二個變體時,圖像被刪除!
(實際上,你可以複製整個PHP代碼到文件中,以及在XML文件中的文本 - 和測試它的時候了 - 無需改變 - 除了評論一個變體了,當然)
PHP文件:
<?php
$galleries = new SimpleXMLElement('galleries.xml', NULL, TRUE);
/*Variant 1: NOT WORKING_____________________________________________________________*/
$image = $galleries->xpath("//galleries/gallery[@name='gallery']/image[@name='Hansio']");
unset($image[0]);
/*Variant 2: WORKING BUT NOT SO CONVENIENT___________________________________________*/
foreach($galleries->xpath("//galleries/gallery[@name='gallery']/image[@name='Hansio']") as $image)
{
unset($image[0]);
}
print_r($galleries);
?>
XML文件:
<?xml version="1.0" encoding="utf-8"?>
<galleries>
<gallery name="gallery">
<image name="image name 1"/>
<image name="image name 2"/>
<image name="Hansio"/>
<image name="image name 4"/>
</gallery>
</galleries>
謝謝!答案是確切的和重點! –