PHP file_get_contents(string), aynı dize tarayıcıda sonuç döndürdüğünde bool (false) değerini döndürür

0

Soru

Aylardır çalışan bazı kodlar aniden çalışmıyor. PHP file_get_contents bölümüne daralttım. İşte kodun bir parçası:

// This upper portion was added to send a user-agent with the request
$opts = [
    "http" => [
        "method" => "GET",
        "header" => "Accept-language: en\r\n" .
        "User-Agent: Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.102011-10-16 20:23:10\r\n",
    ],
];
$context = stream_context_create($opts);
// End of the added part except for the actual get-file-contents request line


$ViewLat = 40.7;
$ViewLng = -73.9;
$Distance = 1000;
$input1 = "https://api.helium.io/v1/hotspots/location/distance?lat=40.7&lon=-73.9&distance=1000";
$input2 = "https://api.helium.io/v1/hotspots/location/distance/?lat=$ViewLat&lon=$ViewLng&distance=$Distance";
$json_string = file_get_contents(urlencode($input2), false, $context); // added the last 2 arguments

var_dump($ViewLat);
echo "<br>";
var_dump($ViewLng);
echo "<br>";
var_dump($Distance);
echo "<br>";
var_dump($input1);
echo "<br>";
var_dump($json_string);

$İnput1 veya $input2 kullanmam önemli değil, ikisi de var_dump çıktısında bool(false) döndürür. Ancak dizeyi doğrudan bir tarayıcıya koyarsanız, bir dizi veri döndürür.

Bu kod Ağustos/Eylül aylarında çalışıyordu, ancak şimdi çalışmıyor.

İşte var_dump çıktı:

float(40.7)
float(-73.9)
int(1000)
string(84) "https://api.helium.io/v1/hotspots/location/distance?lat=40.7&lon=-73.9&distance=1000"
bool(false)
api file-get-contents php
2021-11-23 19:13:04
1

En iyi cevabı

0

Başarı!!!! Dosya içeriği alma isteğine bazı kullanıcı aracısı bilgileri eklemek zorunda kaldım. Neyin işe yaradığını eklemek için yukarıdaki kodu güncelleyeceğim.

2021-11-23 20:48:16

Diğer dillerde

Bu sayfa diğer dillerde

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................