汐岑小窝

  • 首页
  • 网络资源
  • 技术教程
  • 软件工具
  • 网站源码
Yanzh
一款专注于用户阅读体验的博客
  1. 首页
  2. 技术教程
  3. 正文

用于EMLOG程序的链接ICO图标缓存调用代码

2017年08月23日 187点热度 0人点赞 0条评论

很多网站的友情链接前都有该网站的ICO图标,这样美化了友情链接的展示样式很好看;在谷歌还能访问的时候,很多都用谷歌的ICO图标接口,现在不能用了,国内也有一些ICO图标调用接口,但都不是很好,蓝叶思考了下,还是自己写个友情链接的ICO图标缓存代码吧;

下面的代码,就是获取网站根目录下的favicon.ico图标然后缓存到本地再调用出来,代码原理是先检测友情链接网站的favicon.ico是否存在是否能正常访问,如果正常则缓存到本地,否则缓存一个设置好的图标调用,这样提高了速度,不会每次都去检测缓存,只有过了30天后再检测一次;
新添加的链接缓存图标时有些慢,等待完成刷新下页面就可以看到正常显示了。有需要的就把下面代码复制到模版的module.php里,然后在需要的地方调用。

说明:使用这个代码需要在模版目录下新建个文件夹为favicon并设置可写权限,在这个文件夹下放个命名为link.png图片文件做为默认调用。

<?php  
function httpcode($url){
$ch = curl_init();
$timeout = 3;
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); 
curl_setopt($ch,CURLOPT_URL,$url);
curl_exec($ch);
return $httpcode = curl_getinfo($ch,CURLINFO_HTTP_CODE);
curl_close($ch);  
}?>
<?php 
function favicon_file($site_url){
$diy_fav = $site_url."favicon.ico";
$site_md5 = md5($diy_fav);
$fav_url = TEMPLATE_URL.'favicon/';
$fav_path = TEMPLATE_PATH.'favicon/';
$t = 2592000;
if(is_file($fav_path.$site_md5.'.png') == false  || (time() - filemtime($fav_path.$site_md5.'.png')) > $t) {
   if(httpcode($diy_fav) == 200){copy($site_url.'favicon.ico',$fav_path.$site_md5.'.png');}else{
    copy($fav_path.'link.png',$fav_path.$site_md5.'.png');
    }
}else{$endurl = $fav_url.$site_md5.'.png';}  

return $endurl;
}?>
使用方法:<img width="16" height="16" src="<?php echo favicon_file($value['url']); ?>" alt="<?php echo $value['link']; ?>" style="padding-right:5px;" />

转载蓝叶博客

标签: ico 友情链接
最后更新:2017年08月23日

Yanzh

勿因未候日光暖,擅自轻言世间寒

打赏 点赞
< 上一篇
下一篇 >

文章评论

取消回复

Yanzh

勿因未候日光暖,擅自轻言世间寒

免费领优惠券

 
汐岑推荐,安全有保障
立即领券
分类目录
  • SEO优化
  • Special
  • 技术教程
  • 文章广告
  • 杂文语录
  • 网站源码
  • 网络资源
  • 软件工具
书签
  • 猫狗侠网店推广
  • 明月浩空
  • 流量宝
  • 同乐儿
  • 富士理发店
  • Aneu
  • 昨日

COPYRIGHT © 2021 汐岑小窝. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

赣 ICP 备 19000739 号 - 2