【发布时间】:2019-04-14 17:07:39
【问题描述】:
我正在尝试在 PHP 中向 XML 文件的 <gpx> 元素添加一个额外的命名空间。这是现有的<gpx> 元素(注意不包括命名空间“stunninghikes”):
<?xml version="1.0" encoding="UTF-8"?>
<gpx xmlns="http://www.topografix.com/GPX/1/1"
xmlns:gpsies="https://www.gpsies.com/GPX/1/0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
creator="GPSies https://www.gpsies.com - Amden - Chapf (1296m) - Arvenb&#252;el - Vorderh&#246;hi - Gulmen (1788m) - Hinter H&#246;hi - Niederschlag"
version="1.1"
xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd https://www.gpsies.com/GPX/1/0 https://www.gpsies.com/gpsies.xsd">
<content>
(Lots more content)
</content>
</gpx>
我想要将属性xmlns:stunninghikes="https://stunninghikes.com/GPX/1/0" 添加到<gpx> 元素中。
我尝试了许多使用createAttributeNS 和setAttributeNS 的选项,但无法正常工作!这是我尝试过的一个例子:
$gpxDoc = new DomDocument;
$gpxDoc->load($gpxFileName);
$gpxNode = $gpxDoc->getElementsByTagName('gpx');
$gpxNode->createAttributeNS('https://stunninghikes.com/GPX/1/0', 'xmlns:stunninghikes');
$gpxDoc->appendChild($gpxNode);
有什么想法吗?
【问题讨论】: