Php 从现有XML中删除值

Php 从现有XML中删除值,php,arrays,xml,object,Php,Arrays,Xml,Object,考虑在中包含值的XMLsample,我希望删除这些值,并仅使用标记和属性(如果有的话)显示或存储XMLfile,而不使用元素中的任何值 例如: 您好如何将其转换为,我的XML也有2或3个深度子元素 $xml = simplexml_load_string($string); ClearRecurse($xml); echo $xml->asXML(); function ClearRecurse(&$xml) { $children = $xml->child

考虑在中包含值的XMLsample,我希望删除这些值,并仅使用标记和属性(如果有的话)显示或存储XMLfile,而不使用元素中的任何值 例如:

您好
如何将其转换为
,我的XML也有2或3个深度子元素

$xml = simplexml_load_string($string); 
ClearRecurse($xml); 
echo $xml->asXML();

function ClearRecurse(&$xml) 
{ 
   $children = $xml->children();
   if (empty($children)) {
     $xml[0] = "";                   // No child - clear value
   }
   else {
     foreach($xml->children() as $key=>$value) {
        ClearRecurse($value);        // Repeat for all descendants
      }     
   } 
} 

示例是:``对标题和问题的问候并不真正匹配。您想创建具有空值的XML还是从现有XML中删除值?他想删除值@ÁlvaroGonzálezyes我想从现有的xml中删除值检查此答案我的xml也包含注释是否也要清空?注释不是标记值抱歉,我也想删除注释..只想保留标记和属性(如果存在),在删除注释后仍然无法使用代码