首頁 >後端開發 >PHP問題 >php取得網站ico

php取得網站ico

(*-*)浩
(*-*)浩原創
2019-10-18 10:40:442934瀏覽

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