Я пытаюсь загрузить файл ("http://feeds.artistdata.com/xml.shows/artist/AR-YX458DZO75EQACZ3/xml") с file_get_contents, но я получаю сообщение об ошибке в течение 5-10 секунд. XML-файл прекрасно загружается в браузере, и если я использую уменьшенную версию из этого (добавление "/ future" в конце вышеупомянутого URL) он прекрасно загружается с file_get_contents.
Сценарий:
$file = "http://feeds.artistdata.com/xml.shows/artist/AR-YX458DZO75EQACZ3/xml"; $data = file_get_contents($file);
Появляется одна из двух ошибок:
Warning: file_get_contents("http://feeds.artistdata.com/xml.shows/artist/AR-YX458DZO75EQACZ3/xml") [function.file-get-contents]: failed to open stream: HTTP request failed! in MY_PHP_SCRIPT.php on line 2
Или:
Warning: file_get_contents("http://feeds.artistdata.com/xml.shows/artist/AR-YX458DZO75EQACZ3/xml") [function.file-get-contents]: failed to open stream: Connection timed out in MY_PHP_SCRIPT.php on line 2
Есть идеи? Я попытался , используя вместо этого cURL, но когда я это сделал, я просто получил "Ошибка в строке 1". Ошибка появляется менее чем за 10 секунд, поэтому я не могу представить, что это проблема тайм-аута, так как эти значения по умолчанию обычно составляют 15 секунд или 30 секунд в зависимости от приложения.
file_get_contents () возвращает файл в строке, начиная с указанного смещения до макс. Байтов
Ошибка уровня E_WARNING генерируется, если любая из значений maxlength равнаменьше нуля или если смещение превышает длину потока.
// используйте это для того, чтобы ваш xml-канал работал нормально
$ load = file_get_contents ('http://artistdata.sonicbids.com/ari-herstand/shows/xml/');
print_r ($ load);