3

在标准的谷歌地图方向搜索中,它在写下方向之前会提供咨询,说明这条路线有收费。如果没有通行费,就没有咨询节目。我有一个谷歌地图 api 请求,它显示从 1 个家庭地址到 1 个工作地址的旅行距离和持续时间的地图。我很难找到可以通过 xml 返回关于路线是否有收费的值的位置。在 api 请求中,我可以指定避免收费,但如果路线上有收费,则不返回确认。谢谢您的帮助。

4

1 回答 1

3

应该可以,但我不保证谷歌会提醒你每条收费公路。我想他们可以,他们的街景车已经开过每一辆车,我相信他们确实知道他们都在哪里。

<?php

$requestUrl = 'http://maps.googleapis.com/maps/api/directions/xml?origin=Milwaukee,WI&destination=Rolling+Meadows,IL&sensor=false';
$response = file_get_contents($requestUrl);
 //note I'm assuming English language
$hasTolls = (strpos($response, 'Toll road') !== false);
var_dump($hasTolls);

?>

编辑:事实上,报告收费公路的数量可能很有用:

<?php

$requestUrl = 'http://maps.googleapis.com/maps/api/directions/xml?origin=Milwaukee,WI&destination=Rolling+Meadows,IL&sensor=false';
$response = file_get_contents($requestUrl);
 //note I'm assuming English language
$numTolls = substr_count($response, 'Toll road');
$hasTolls = ($numTolls > 0);
var_dump($hasTolls);
if ($hasTolls) {
    echo '<p>The route has '.$numTolls.' toll roads</p>';
}

?>
于 2013-11-14T09:03:57.557 回答