PHP - Определение наличия удаленного файла - PullRequest
1 голос
/ 14 ноября 2011

Мне нужно определить, существует ли удаленный файл или нет.

Я использовал curl, но он, вероятно, читает весь файл, потому что он очень медленный.

Есть ли какой-нибудь быстрый способ "прикоснуться" к удаленному файлу (например, прочитать только один байт этого файла или вернуть false, когда происходит 404)?

Также может возникнуть проблема, если проверенный домен не существует или просто истекло время ожидания соединения. Таким образом, интервал тайм-аута должен быть установлен ниже обычного значения.

Ответы [ 2 ]

4 голосов
/ 14 ноября 2011

Вы должны отправить запрос HEAD, таким образом будут возвращены только заголовки HTTP, а не весь файл

curl_setopt(CURLOPT_NOBODY, true);
1 голос
/ 14 ноября 2011

Если вы просто хотите проверить наличие файла, вы можете использовать curl для выполнения запроса HEAD вместо GET.Таким образом, веб-сервер будет отвечать только информацией заголовка (включая код состояния 200/404 / ...), а не всем файлом

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...