URL'de protokol bilgisi eksik. PHP bir dosya sistemi yolu olduğunu düşünüyor ve belirtilen konuma dosyaya erişmeye çalışıyor. Ancak, dosya sisteminizde konum aslında bulunmuyor ve bir hata atılıyor.
Sen içeriğini almaya çalıştığınız URL başında http
veya https
eklemeniz gerekir: Aşağıdaki hata gelince
$json = json_decode(file_get_contents('http://...'));
:
Unable to find the wrapper - did you forget to enable it when you configured PHP?
Sizin Apache kurulumu muhtemelen SSL desteği ile derlenmedi. OpenSSL'yi yüklemeyi ve onu kullanmayı deneyebilir veya cURL kullanabilirsiniz. Kişisel olarak file_get_contents()
üzerinden cURL tercih ederim. Burada kullanabileceğiniz bir fonksiyon var:
function curl_get_contents($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
Kullanımı:
$url = 'https://...';
$json = json_decode(curl_get_contents($url));
8815 görüş ve -2 derece? Birisi bunu faydalı bulmalı. – easymoden00b
Sıklıkla bu hatayı giderir ve hızlı bir şekilde sorunu gidermek için şu adımları izleyin: https://stackoverflow.com/a/36577021/2873507 –