PHP : 解析带有 GML 标签的 XML 文件

PHP : Parse an XML File with GML tags

我需要一些帮助! 我正在尝试使用 php 解析一个带有 GML 标签的 XML 文件。我正在使用 simplexml_load_file 函数来解析我的文件,除了 gml: 标签外,它运行良好。

这是文件:

<par>
  .....
  <gml:Polygon>
    <gml:outerBoundaryIs>
      <gml:LinearRing>
        <gml:coordinates>
          {{ DATAS I WOULD LIKE TO PARSE}}
        </gml:coordinates>
      </gml:LinearRing>
    </gml:outerBoundaryIs>
  </gml:Polygon>
 ......
</par>

这是我正在使用的代码:

    <?php
if (file_exists('doc.xml')) {
    $xml = simplexml_load_file('doc.xml');
} 
...    
foreach ($xml->...->par->{'gml:Polygon'}->{'gml:outerBoundaryIs'}->{'gml:LinearRing'}->{'gml:coordinates'} as $coords) {
        echo $coords;
        echo '<br>';   
    }

运行那个代码,我明白了:

警告:尝试在第 44

行 \www\xmlphptest\index.php 的空值上读取 属性“gml:LinearRing”

警告:尝试在第 44

行的 \www\xmlphptest\index.php 中读取 属性“gml:coordinates”

警告:foreach() 参数必须是数组|对象类型,第 44 行 \www\xmlphptest\index.php 中给出的空值

你能帮帮我吗! 谢谢 :)

在 php 文档中找到它。 与具有命名空间的 xml 相关: https://www.php.net/manual/fr/simplexmlelement.registerxpathnamespace.php

谢谢