保存外部xml文件的副本,而不使用xml命名空间

时间:2012-10-17 13:29:24

标签: php javascript xml namespaces

  

可能重复:
  How to detect and remove unnecessary xmlns:<something> attributes in PHP DOM?

也许你可以帮我解决这个问题。我在外部服务器上有一个XML文件,我只能在浏览器中通过https连接到达(外部XML由外部公司提供)。我想将它保存为我的网站的Web服务器上的新XML文件,但没有某些元素,如命名空间声明(因为我想在Dreamweaver中使用XSL进一步处理CML)。 我怎么能用PHP或Javascript做到这一点?我不是一个真正的程序员,但我知道Javascript和PHP足以做简单的事情。

请帮帮我。感谢。

2 个答案:

答案 0 :(得分:0)

您可以使用curl或file_get_contents(我更喜欢curl)检索文件,然后使用preg_match_all或您想要删除命名空间引用,定义和您需要的任何其他部分的任何其他替换选项来处理结果。 / p>

再见

答案 1 :(得分:0)

这段代码可以解决问题。只需替换数据以满足您的需求。

$feed = file_get_contents("http://www.sitepoint.com/recent.rdf");
$feed = preg_replace("/<.*(xmlns *= *[\"'].[^\"']*[\"']).[^>]*>/i", "", $feed); // This removes ALL default namespaces.
$xml_feed = simplexml_load_string($feed);