Php 如何将名称空间声明移到顶部?
代码:Php 如何将名称空间声明移到顶部?,php,xml,simplexml,Php,Xml,Simplexml,代码: 输出: <?xml version="1.0" encoding="UTF-8"?> <rss version="2.0"><example:foo xmlns:example="http://example.com">1</example:foo><example:bar xmlns:example="http://example.com">2</example:bar></rss> 12 期
输出:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><example:foo xmlns:example="http://example.com">1</example:foo><example:bar xmlns:example="http://example.com">2</example:bar></rss>
12
期望输出:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:example="http://example.com"><example:foo>1</example:foo><example:bar>2</example:bar></rss>
12
如何告诉SimpleXML将名称空间声明移动到
?您应该添加xmlns:example=”http://example.com“
到xml标记请尝试以下代码:
<?php
$ns='http://example.com';
$rss=new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8" ?><rss xmlns:example="http://example.com"></rss>');
$rss->registerXPathNamespace('example',$ns);
$rss->addAttribute('version','2.0');
$rss->addChild('example:foo','1',$ns);
$rss->addChild('example:bar','2',$ns);
echo '<pre>'.htmlspecialchars($rss->asXML()).'</pre>';
?>
输出:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><example:foo xmlns:example="http://example.com">1</example:foo><example:bar xmlns:example="http://example.com">2</example:bar></rss>
12
您应该添加xmlns:example=”http://example.com“
到xml标记请尝试以下代码:
<?php
$ns='http://example.com';
$rss=new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8" ?><rss xmlns:example="http://example.com"></rss>');
$rss->registerXPathNamespace('example',$ns);
$rss->addAttribute('version','2.0');
$rss->addChild('example:foo','1',$ns);
$rss->addChild('example:bar','2',$ns);
echo '<pre>'.htmlspecialchars($rss->asXML()).'</pre>';
?>
输出:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><example:foo xmlns:example="http://example.com">1</example:foo><example:bar xmlns:example="http://example.com">2</example:bar></rss>
12