2015-03-16 3 views
0

После чтения в разных местах, включая http://php.net/manual/en/function.file-exists.php, у меня есть следующий рабочий код, который определяет, является ли данный хост, например. http://example.com имеет Favicon расположен в /favicon.icofile_exists, @get_headers, cURL и обнаружение значка

$file = 'http://www.easyjet.com/favicon.ico'; 
$file_headers = @get_headers($file); 

if($file_headers[0] == 'HTTP/1.0 200 OK') { 

    //place favicon as an image on the page 
    echo "<img src ='" . $file . "'>"; 
    } else { 
    //place default image 
    echo "<img src ='" . "globe.jpg" . "'>"; 

} 

В то время как я знаю, что есть лучше, более тщательные пути поиска фавиконки файл на StackOverflow, я больше обеспокоен моим использованием @get_headers. Некоторые из прочитанных мной предложений cURL могут быть полезны или что я должен настроить агент пользователя.

Я собираюсь столкнуться с трудностями с этим кодом в некоторых случаях, которые я не предвидел?

+0

завиток немного более «прочный» с дополнительными возможностями обработки ошибок - но если выше работает, то почему –

ответ

1

Personaly Я думаю, что get_headers - лучший способ в этом случае. Прежде всего, он выполняет запрос HEAD, который уменьшает нагрузку на ваш и удаленный хост (поскольку удаленный хост дает только заголовки, а вашему серверу не требуется выборка самого изображения).

Я действительно не думаю, что это вызовет проблемы, и я не видел никаких проблем, вызванных использованием этой функции.

 Смежные вопросы

  • Нет связанных вопросов^_^