Php 有没有办法运行类似的地理编码器。因此,您每天可以查询2500多个

Php 有没有办法运行类似的地理编码器。因此,您每天可以查询2500多个,php,geocoding,Php,Geocoding,这个代码似乎工作得很好,但我不能每天超过2500个请求。我有成千上万张唱片。 联系 <?php $servername = "localhost"; $username = "searchdb"; $passwd = "mypass"; $dbname = "mydb"; $test_table = "update_lon_lat"; $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $passwd);

这个代码似乎工作得很好,但我不能每天超过2500个请求。我有成千上万张唱片。 联系

<?php
$servername = "localhost";
$username = "searchdb";
$passwd = "mypass";
$dbname = "mydb";
$test_table = "update_lon_lat";
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $passwd);             passwd);`enter code here`
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 

    $i = 0;
    $empty = "";
若为真,则计算新的坐标并将其写入表中

    while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
        $i = $i + 1;
        $mapaddress = "";
        $client_id = $row['client_id'];
        $mapaddress =  ($row['address'] . ' ' . $row['city'] . ' ' .  $row['state'] . ' ' . $row['zip']);
下面是可疑代码的开始

        $address_holder = $mapaddress; // Google HQ
        $prepAddr = str_replace(' ','+',$address_holder);
        $geocode=file_get_contents('https://maps.google.com/maps/api/geocode/json?address='.$prepAddr.'&sensor=false');
        $output= json_decode($geocode);
        $lat_holder = $output->results[0]->geometry->location->lat;
        $longitude_holder = $output->results[0]->geometry->location->lng;
上述可疑代码结束

$stmt2 = $conn->prepare("UPDATE $test_table SET longitude = :longitude, lat = :lat WHERE client_id = :client_id");
$stmt2->bindValue(':longitude' , "$longitude_holder", PDO::PARAM_STR);
$stmt2->bindValue(':lat' , "$lat_holder", PDO::PARAM_STR);
$stmt2->bindValue(':client_id' , "$client_id", PDO::PARAM_STR);
$stmt2->execute();

  echo $i . ' ' . $row['address'] . ' ' . $row['city'] . ', ' .            $row['state'] . ' ' . $row['zip'] . ' lon=' . $longitude_holder
. ' Lat=' . $lat_holder . '<br>'; 

}

echo "Records Updated = " . $i;

?>code here
选择1 你可以通过花钱来解锁更高的配额。

选择2
使用限制适用于每个项目。因此,创建多个项目,当达到允许的最大限制时,只需将客户端id更改为未超过最大配额的其他项目。

支付服务费用会很昂贵吗?启用按需付费计费以解锁更高的配额:$0.50 USD/1000额外请求,每天最多100000。也就是说,这是一个个人项目还是一个业务解决方案?这将是一个新的业务与一名员工。也许我应该花399美元买一个预建的数据库。看起来这将是最便宜的路线,因为我有4900万条记录要处理。这似乎是处理这么多数据的合理成本。这是个好问题吗?任何人我想确定我的问题和例子的格式都是Stackoverflow喜欢的。忘了提到399.00美元的数据库只有2800万条记录。但是他们有很长很长的时间。我花250.00美元购买了一个4900万美元的数据库,但是没有很长很长时间。如果我计算正确,2500.00美元是用上面的脚本处理4900万美元并完成它的成本。还有其他想法吗?
$stmt2 = $conn->prepare("UPDATE $test_table SET longitude = :longitude, lat = :lat WHERE client_id = :client_id");
$stmt2->bindValue(':longitude' , "$longitude_holder", PDO::PARAM_STR);
$stmt2->bindValue(':lat' , "$lat_holder", PDO::PARAM_STR);
$stmt2->bindValue(':client_id' , "$client_id", PDO::PARAM_STR);
$stmt2->execute();

  echo $i . ' ' . $row['address'] . ' ' . $row['city'] . ', ' .            $row['state'] . ' ' . $row['zip'] . ' lon=' . $longitude_holder
. ' Lat=' . $lat_holder . '<br>'; 

}

echo "Records Updated = " . $i;

?>code here