allow_url_fopen
, который требуется, если вы хотите открыть удаленный файл с помощью fopen
, может быть отключен; Итак, есть ситуации, в которых fopen('http://...')
невозможно.
Примечание: в этом ответе я говорю "fopen
", но это точно так же со всеми функциями PHP, которые могут обращаться к удаленным файлам: fopen
, file_get_contents
, simplexml_load_file
, ...
С другой стороны, curl является расширением и тоже не всегда включено.
Приятно с curl в том, что его довольно легко настроить, и существует множество существующих опций (см. curl_setopt
)
Чтобы настроить способ fopen
доступа к удаленным файлам, это немного сложнее - обычно вам придется работать с потоками (см., Например, здесь ) ; и, вообще говоря, кёрл знает больше людей, чем разработчиков, осваивающих потоки.
Самый безопасный способ - особенно если ваше приложение будет развернуто на серверах, на которых вы не являетесь администратором, и не сможете перенастроить:
- Попробуйте одно решение
- И, если он не работает, попробуйте другой