今天我醒来并希望运行我的代码(运行正常)但是我收到了几个错误 - 在发送包含多个来源和目的地的请求后获得的json响应循环时出现了未定义的偏移错误:
$request = file_get_contents("https://maps.googleapis.com/maps/api/distancematrix/json?origins=$OriginUrl&destinations=$DestinationUrl&mode=driving");
$resultdistance = json_decode($request, true);
for($i=0;$i<count($LocationDetails);$i++){
$distanceM = $resultdistance['rows'][$i]['elements'][$i]['distance']['value'];
$distanceKM = $distanceM / 1000;
$TravelDistance = round($distanceKM,1); // Distance from Act 1 and Act 2
$DistanceText = $resultdistance['rows'][$i]['elements'][$i]['distance']['text'];
$TimeToTravelSec = $resultdistance['rows'][$i]['elements'][$i]['duration']['value'];
$TimeToTravelText = $resultdistance['rows'][$i]['elements'][$i]['duration']['text'];
}
然后我在具有多个来源的地址栏中手动输入http请求,并注意到该请求仅使用一个来源发送:
已发送两个来源: 1. Hilton + Mauritius + Resort +&amp; + Spa,+ Coastal + Road,+ Flic + en + Flac,+ Mauritius 2.LAventure +杜+苏克雷,+ B18,+庞普勒穆斯,+毛里求斯
但只考虑了第一个(参见上图或点击链接发送请求并查看结果)!几天前我使用了大约5个起源,它正在工作请帮助!
答案 0 :(得分:0)
我删除'&amp;'在:
Hilton+Mauritius+Resort+&+Spa,+Coastal+Road,+Flic+en+Flac,+Mauritius
它工作正常。不应该有任何'&amp;在原点的名称和目的地的名称,因为参数已经使用'&amp;'签署,这可能会导致一些问题。