0

逆ジオコーディングのために Google マップ API にアクセスしたい。file_get_contents メソッドを使用して URL にアクセスします。
$url = "http://maps.google.com/maps/geo?json&ll&ll=".$lat.",".$long;
$data = file_get_contents($url);

そして、$data の値を FALSE として取得しました。スタック オーバーフローから、php.ini ファイルの構成が原因であるという情報を取得しました (当社の Web サーバーでは allow_url_fopen は false)

。サーバー構成を変更する準備ができていません。
サーバー構成を変更せずに URL にアクセスする別の方法はありますか? あなたの経験、知識を共有してください、ありがとう

4

2 に答える 2

2

サーバーにcurlライブラリがインストールされていますか? あなたはそれを試すことができます。

たとえば、次のことを試すことができます。

$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/2.0 (compatible; MSIE 3.02; Update a; AK; Windows 95)");
curl_setopt($ch, CURLOPT_HTTPGET, true);
curl_setopt($ch, CURLOPT_URL, 'http://maps.google.com/maps/geo?json&ll&ll='.$lat.','.$long  );
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
$ret_val = curl_exec($ch);

echo $ret_val;
于 2011-08-06T06:10:25.953 に答える
1

サーバーにcurlライブラリがインストールされているかどうかを確認できます...

http://www.php.net/manual/en/book.curl.php

cURL support enabled次の出力で次のようなものを探すことができますphpinfo();

于 2011-08-06T06:06:43.453 に答える