Rumah >pembangunan bahagian belakang >tutorial php >Mengapakah PHP `file_get_contents()` saya gagal dengan 'permintaan HTTP gagal,' dan bagaimana saya boleh menggunakan cURL sebagai penyelesaian?
PHP file_get_contents() Gagal Membuka Strim: Kegagalan Permintaan HTTP
Apabila cuba mendapatkan semula kandungan daripada URL menggunakan fungsi file_get_contents() PHP , anda mungkin menghadapi mesej ralat yang menyatakan "gagal membuka strim: Permintaan HTTP gagal!" Isu ini timbul apabila PHP tidak dapat mewujudkan sambungan ke URL yang ditentukan.
Menyelesaikan Masalah Isu
Mesej ralat menunjukkan bahawa permintaan HTTP dibuat oleh file_get_contents() gagal. Ini mungkin disebabkan oleh beberapa sebab:
Menggunakan cURL sebagai Alternatif
Dalam kes fail_get_contents() gagal, alternatif penyelesaiannya ialah menggunakan cURL, sambungan PHP yang popular untuk membuat permintaan HTTP. cURL menyediakan lebih kawalan ke atas konfigurasi permintaan dan membenarkan untuk menyelesaikan masalah yang mungkin timbul.
Contoh Kod menggunakan cURL
<?php // Initialize a cURL handle $curl_handle = curl_init(); // Set the URL to fetch curl_setopt($curl_handle, CURLOPT_URL, 'http://###.##.##.##/mp/get?mpsrc=http://mybucket.s3.amazonaws.com/11111.mpg&mpaction=convert format=flv'); // Set a timeout for the connection curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2); // Request the content to be returned instead of printed curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1); // Set a user agent to identify your application curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Your application name'); // Execute the request and store the response $query = curl_exec($curl_handle); // Close the cURL handle curl_close($curl_handle); ?>
Kesimpulan
Apabila menggunakan file_get_contents() untuk mengambil kandungan daripada URL, pastikan URL itu sah dan tiada isu sambungan rangkaian. Jika semakan ini gagal, pertimbangkan untuk menggunakan cURL sebagai alternatif, kerana ia memberikan lebih fleksibiliti dan keupayaan menyelesaikan masalah.
Atas ialah kandungan terperinci Mengapakah PHP `file_get_contents()` saya gagal dengan 'permintaan HTTP gagal,' dan bagaimana saya boleh menggunakan cURL sebagai penyelesaian?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!