0

我正在搞乱下面的代码,我似乎无法让它正常工作......从我收集到的所有代码都工作得很好,除了除法 $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;

?>

有没有人对可能导致这种情况的原因有任何想法?我已经在线测试并查看了 GoogleApis URL(http://maps.googleapis.com/maps/api/directions/xml?origin=ec1v+0es&destination=ec4r+3tn&sensor=false),看起来好像我的代码正在拉出正确的值,它只是没有划分或其他什么......啊,我很困惑,有点菜鸟,所以请好好去吧:)

4

2 回答 2

1

您应该将 $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
于 2013-08-19T21:09:27.103 回答
0
<?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;

?>

更新的代码在这里 :) 感谢您的所有帮助!以上似乎现在工作正常:)

于 2013-08-19T21:35:21.103 回答