2012-07-17 61 views
0
<soap-env:envelope xmlns:soap-enc="" xmlns:soap-env=""> 
    <soap-env:header> 
    </soap-env:header> 
    <soap-env:body> 
     <ns1:createuserresponse> 
      <username>weqew_825</username> 
      <password>uwnoqedcjs</password> 
      <result> 
       <succeeded>true</succeeded> 
       <errorcode>0</errorcode> 
       <errortext></errortext> 
      </result> 
     </ns1:createuserresponse> 
    </soap-env:body> 
</soap-env:envelope> 

我想从上面的字符串中删除xmlns:soap-enc="" xmlns:soap-env=""删除XML字符串属性

+0

'str_replace'会做,但请注意,如果没有NS报关单你的XML将是无效的 – Gordon 2012-07-17 11:52:30

回答

0

可以使用的preg_replace

$string = preg_replace('/xmlns:.*\"/','',$string); 

,但它会更好,以避免因为再次进行解析时XML使用SimpleXML将产生很多警告(可以用@来表示)。

了更坚实的解决方案

希望它帮助

+0

simplexml_load_string不是将上面的字符串转换为数组,这就是为什么我想删除该属性 – Anand 2012-07-17 11:36:16

+0

编辑我的回答 – Gntem 2012-07-17 20:14:48

+0

感谢GeoPhoenix ..... :-) – Anand 2012-07-20 11:08:19