0

我想用地址数据将 XML 数据加载到我的 php 文件中。每个地址也应该有坐标 - 如果没有,应该添加它们。所以我正在做以下事情:

        $xmlDatei = "AddressData.xml";
        $xml = simplexml_load_file($xmlDatei);

        for($i=0,$size=count($xml);$i<$size;$i++){

            if($xml->RECORD[$i]->ADDRESS->LAT != NULL){
                //get lat and lng stuff here...

                $lat = .......
                $lng = .......


                echo "lat: " . $lat; // Test echo WORKING
                echo "lng: " . $lng;

                // Now i want to add the data to the xml
                $xml->RECORD[$i]->ADDRESS->addAttribute('LAT', $lat);
                $xml->RECORD[$i]->ADDRESS->addAttribute('LNG', $lng);

                $xml->saveXML();
            }

            // Test echo NOT WORKING
            echo $xml->RECORD[$i]->ADDRESS->LAT;
            echo $xml->RECORD[$i]->ADDRESS->LNG;
        }

所以看起来 addAttribute 在这里不能正常工作。

我究竟做错了什么???

4

2 回答 2

0

您的回声正在寻找一个名为的子元素LAT

echo $xml->RECORD[$i]->ADDRESS->LAT;

但是您添加了一个属性,因此您需要使用不同的语法:

echo $xml->RECORD[$i]->ADDRESS['LAT'];
于 2014-08-22T11:15:01.087 回答
0

您正在向ADDRESS标签添加属性,而不是节点。

尝试这个:

echo $xml->RECORD[$i]->ADDRESS['LAT'];
echo $xml->RECORD[$i]->ADDRESS['LNG'];
于 2014-08-22T11:15:24.947 回答