ホームページ  >  に質問  >  本文

PHP - ブラウザと file_get_contents が一貫性のない結果を返す

地理位置情報を取得するために Google API にアクセスしています。

エンドポイントは次のようになります:

https://maps.googleapis.com/maps/api/geocode/xml?address=84100 オレンジ FR&key=apikey

このリンクを Chrome ブラウザで開くと、API はいくつかのデータを返します。

file_gets_content または simplexml_load_file を使用してアクセスすると、「結果ゼロ」が返されます。

いくつかのテストの後、ブラウザ自体がイタリア語に設定されていたため、Chrome で結果を確認できることがわかりました。英語に設定すると、PHP と同様に「結果ゼロ」が返されます。

PHP で Chrome と同じ結果を得るにはどうすればよいですか?

P粉116654495P粉116654495424日前637

全員に返信(1)返信します

  • P粉996763314

    P粉9967633142023-09-15 16:03:36

    実はここで問題を発見しました。

    基本的に、Chrome をイタリア語に設定すると、おそらくパラメータの順序が並べ替えられ、異なる結果が返されました。

    実際の問題は、住所パラメータにあり、郵便番号の前に都市が来ます。

    また、パラメータ & language=it を追加すると、同じ理由で機能する可能性があります。

    したがって、正しい URL は

    である必要があります。

    https://maps.googleapis.com/maps/api/geocode/xml?address=ORANGE 84100 FR&key=apikey

    この問題のデバッグに時間がかかりすぎました。

    返事
    0
  • キャンセル返事