使用PHP SimpleXML从xml文件中删除所有属性值(非属性)的最佳方法是什么?
条件: 输入的xml文件嵌套有已知的属性名称。 输出xml文件保留所有属性名称,但不保留值。
示例xml:
<xml>
<animal>
<dog weight="">
<dogChild1 weight=""></dogChild1>
<dogChild2 weight=""></dogChild2>
</dog>
<cat weight="">
</cat>
</animal>
<...>
</...>
</xml>
答案 0 :(得分:1)
不确定我是否理解正确,但您想加载XML,保留结构但删除值? E.g。
XML文件:
<EXAMPLE><PETS><PET><TYPE>Dog</TYPE><AGE>2</AGE></PET><PET><TYPE>CAT</TYPE><AGE>6 Months</AGE></PET></PETS></EXAMPLE>
因此,对于该文件内容,您要删除TYPE
和AGE
中填充的值吗?如果是这样,这样的事情可能会奏效:
$objPetsXml = simplexml_load_string($strFileContents);
foreach($objPetsXml->PETS->PET as $objPet) {
$objPet->TYPE = "";
$objPet->AGE = "";
}
// Build your new XML and do whatever
这有意义吗?