php 获取 favicon
时间: 2024-02-06 09:01:28 浏览: 119
在PHP中,可以使用以下代码来获取网站的favicon:
```php
function getFavicon($url) {
$favicon_url = 'http://' . parse_url($url)['host'] . '/favicon.ico';
if (get_headers($favicon_url)[0] == 'HTTP/1.1 404 Not Found') {
return false;
}
return $favicon_url;
}
$url = 'https://example.com';
$favicon_url = getFavicon($url);
if ($favicon_url) {
echo '网站的favicon URL是:' . $favicon_url;
} else {
echo '无法获取网站的favicon';
}
```
上述代码中,`getFavicon`函数接受一个URL参数,并构建一个获取favicon的URL。通过检查获取到的favicon的URL的响应头,如果返回值为`HTTP/1.1 404 Not Found`,则表示无法获取到favicon,否则返回获取到的favicon的URL。
我们可以使用`https://example.com`作为示例URL进行测试。当我们运行以上代码时,输出将是:网站的favicon URL是:https://example.com/favicon.ico。这里使用了解析URL的`parse_url`函数来获取主机名,并拼接上`/favicon.ico`来构建favicon的URL。
需要注意的是,有些网站可能没有favicon.ico文件或者favicon的URL并不是`/favicon.ico`,这样的情况下就无法通过简单的获取来实现获取favicon的功能了。所以,此代码仅适用于一部分网站。如果要更加通用地获取favicon,可能需要使用一些其他的方法或者API。
阅读全文