首页 >后端开发 >PHP问题 >php获取网站ico

php获取网站ico

(*-*)浩
(*-*)浩原创
2019-10-18 10:40:442928浏览

php获取网站ico

根据设置favicon的方式,就有2种读取favicon的方法:

A、默认直接读取网站根目录的favicon.ico文件。   (推荐学习:PHP视频教程

B、如果不存在根目录下的favicon.ico文件,就读取页面里favicon的声明。

相比之下,获取网站根目录下的favicon.ico文件是最简单快捷的,但如果网站根目录下没有该文件,就需要使用后台程序读取网页的源代码,非常的麻烦。

使用PHP获取网站Favicon的方法

最近做一个Tab需要在网站名旁边显示网站的Favicon以提高显示效果,如图:

icetab开始做的时候想到的是利用Google的方式来获取,使用“http://www.google.com/s2/favicons?domain=网址”的方式可以直接获得网站的Favicon图标并以16*16大小图片的形式显示出来,这个方法简单方便,但在有些网络环境下却会出现图片无法显示的问题(需要翻墙),为了解决这个BUG我决定重新写一个获取Favicon的函数,使用自己的服务器以避免翻墙。

实际效果请参见示例:

http://favicon.byi.pw/?url=blog.icewingcc.com

如果不想自己写方法的话也可以使用我提供的接口,即“http://favicon.byi.pw/?url=网址”,网址可以带http://前缀。

代码(调用Google的方式,这种方式可以减少代码量,并且速度也比较快):

<?php
	if(isset($_GET[&#39;url&#39;])){
	    $icon = file_get_contents("http://www.google.com/s2/favicons?domain=" . $_GET[&#39;url&#39;]);
	    if($icon){
	        header(&#39;Content-type:image/png&#39;);
	        echo $icon;
	    }

没错,就这几行代码搞定一切 ^_^

这样只要我们使用的服务器能够访问Google就可以正常显示出Favicon,不再受网络环境的影响。

以上是php获取网站ico的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn