我想用地址数据将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在这里工作不正常。
我做错了什么???
答案 0 :(得分:0)
您的回音正在寻找名为LAT
的元素:
echo $xml->RECORD[$i]->ADDRESS->LAT;
但是您添加了属性,因此您需要使用不同的语法:
echo $xml->RECORD[$i]->ADDRESS['LAT'];
答案 1 :(得分:0)
您要向ADDRESS
标记添加属性,而不是节点。
试试这个:
echo $xml->RECORD[$i]->ADDRESS['LAT'];
echo $xml->RECORD[$i]->ADDRESS['LNG'];