file_get_contents не захватывает необходимые данные - PullRequest
0 голосов
/ 19 января 2020
$data = file_get_contents($url);

$result = json_decode($data, true); 

с приведенным выше кодом, я хотел записать приведенный ниже вывод url в $ data, но file_get_contents ничего не дает $ data. Пожалуйста, помогите мне в этом, а также, пожалуйста, дайте мне знать, есть ли другой способ в PHP сделать то же самое.

{
   "destination_addresses" : [ "Boyces Rd, Wisbech PE13 2JT, UK" ],
   "origin_addresses" : [ "Battersea, London SW8 3QR, UK" ],
   "rows" : [
      {
         "elements" : [
            {
               "distance" : {
                  "text" : "174 km",
                  "value" : 173989
               },
               "duration" : {
                  "text" : "2 hours 42 mins",
                  "value" : 9702
               },
               "status" : "OK"
            }
         ]
      }
   ],
   "status" : "OK"
}

1 Ответ

0 голосов
/ 19 января 2020

Вы можете сделать это разными способами

Например:

$jsonData = json_decode(file_get_contents('https://chart.googleapis.com/chart?cht=p3&chs=250x100&chd=t:60,40&chl=Hello|World&chof=json'));

с помощью вышеуказанного метода, пожалуйста, убедитесь, что в настройках сервера разрешено "allow_url_fopen".

Использование curl может быть другим решением:

$curlSession = curl_init();
curl_setopt($curlSession, CURLOPT_URL, 'https://chart.googleapis.com/chart?cht=p3&chs=250x100&chd=t:60,40&chl=Hello|World&chof=json');
curl_setopt($curlSession, CURLOPT_BINARYTRANSFER, true);
curl_setopt($curlSession, CURLOPT_RETURNTRANSFER, true);

$jsonData = json_decode(curl_exec($curlSession));
curl_close($curlSession);
...