Php XML解析/划分问题

Php XML解析/划分问题,php,xml,xml-parsing,Php,Xml,Xml Parsing,我正在乱搞下面的代码,我似乎无法让它正常工作。。。从我收集的信息来看,所有代码都工作得非常好,除了division$distance1变量 <?php $start = 'EC1V 0ES'; $end = 'EC4R 3TN'; $url = 'http://maps.googleapis.com/maps/api/directions/xml?origin='.$start.'&destination='.$end.'&sensor=false'; $xml = si

我正在乱搞下面的代码,我似乎无法让它正常工作。。。从我收集的信息来看,所有代码都工作得非常好,除了division$distance1变量

<?php
$start = 'EC1V 0ES';
$end = 'EC4R 3TN';

$url = 'http://maps.googleapis.com/maps/api/directions/xml?origin='.$start.'&destination='.$end.'&sensor=false';
$xml = simplexml_load_file($url); 
$distance = $xml->route->leg->distance->text;
$distance1 = $distance/1.609; // divided by 1.609 to convert KM into Miles

echo $distance;
echo '<br />';
echo $distance1;

?>
route->leg->distance->text;
$distance 1=$distance/1.609;//除以1.609,将公里转换为英里
回波距离;
回声“
”; echo$distance 1; ?>

有人知道是什么导致了这一切吗?我已经在线测试并查看了GoogleApis URL(),似乎我的代码提取了正确的值,只是没有除法或其他什么。。。啊,我很困惑,有点不知所措,所以请好好说:)

你应该投$distance作为float

$start = 'EC1V 0ES';
$end = 'EC4R 3TN';

$url = 'http://maps.googleapis.com/maps/api/directions/xml?origin='.$start.'&destination='.$end.'&sensor=false';
$xml = simplexml_load_file($url); 
$distance = (float) $xml->route->leg->distance->text;
$distance1 = $distance/1.609; // divided by 1.609 to convert KM into Miles

echo $distance;
echo '<br />';
echo $distance1;

// 4.4<br />2.7346177750155
$start='ec1v0es';
$end='EC4R3TN';
$url='1http://maps.googleapis.com/maps/api/directions/xml?origin=“.$start.&destination=”.$end.&sensor=false”;
$xml=simplexml\u加载文件($url);
$distance=(float)$xml->route->leg->distance->text;
$distance 1=$distance/1.609;//除以1.609,将公里转换为英里
回波距离;
回声“
”; echo$distance 1; //4.4
2.7346177750155
路线->航段->距离->文本;
$distance 1=圆形($distance/1.609,2);//除以1.609,将公里转换为英里
回波距离;
回声“
”; echo$distance 1; ?>

更新的代码在这里:)谢谢你的帮助!上面的代码现在似乎工作正常:)

我在运行脚本时得到了这个输出:“4.4公里
2.486016159105”是的,输出应该是“4.4公里
2.73403325”,它没有正确划分:/@hek2mgl:4.4/1.609!=2.486016159105. 我也没有先注意到^^$distance真的包含“4.4公里”吗?所以在你尝试分割之前,你应该先去掉“km”。我相信这已经足够了!它打印的是2.7346177750155,而不是真正的值:2.73403325,但当我将其四舍五入到小数点后两位时,它不会有太大影响:)
<?php

$start = 'EC1V 0ES';
$end = 'EC4R 3TN';

$url = 'http://maps.googleapis.com/maps/api/directions/xml?origin='.$start.'&destination='.$end.'&sensor=false';
$xml = simplexml_load_file($url); 
$distance = (float) $xml->route->leg->distance->text;
$distance1 = round($distance/1.609,2); // divided by 1.609 to convert KM into Miles

echo $distance;
echo '<br />';
echo $distance1;

?>