有的 网站 源码中加入了这几行代码: 1 link rel ="shortcut icon" href ="/favicon.ico" type ="image/x-icon" / 或者是 1 link rel =" icon" href ="/favicon.ico" type ="image/x-icon" / 这样可以指定 图标 位置存放。 但现在的浏览器大多支持自动 获取
有的网站源码中加入了这几行代码:
<span>1</span> <span><</span><span>link </span><span>rel</span><span>="shortcut icon"</span><span> href</span><span>="/favicon.ico"</span><span> type</span><span>="image/x-icon"</span> <span>/></span>
或者是
<span>1</span> <span><</span><span>link </span><span>rel</span><span>=" icon"</span><span> href</span><span>="/favicon.ico"</span><span> type</span><span>="image/x-icon"</span> <span>/></span>
这样可以指定图标位置存放。
但现在的浏览器大多支持自动获取网站根目录下的.ico文件,所以源码中看不到那几行代码。
可行的方法:
立即学习“PHP免费学习笔记(深入)”;
【极品模板】出品的一款功能强大、安全性高、调用简单、扩展灵活的响应式多语言企业网站管理系统。 产品主要功能如下: 01、支持多语言扩展(独立内容表,可一键复制中文版数据) 02、支持一键修改后台路径; 03、杜绝常见弱口令,内置多种参数过滤、有效防范常见XSS; 04、支持文件分片上传功能,实现大文件轻松上传; 05、支持一键获取微信公众号文章(保存文章的图片到本地服务器); 06、支持一键
0
<span> 1</span> <span>//</span><span>得到每一个url,<strong>获取</strong>其中的icon</span>
<span> 2</span> <span>$url</span> = <span>$matches</span>[1][<span>$i</span><span>];
</span><span> 3</span> <span>$contents</span> = @<span>file_get_contents</span>(<span>$url</span><span>);
</span><span> 4</span> <span>preg_match</span>('/<link rel=".*?icon".*?href="(.*?)".*?>/', <span>$contents</span>,<span>$icon</span><span>);
</span><span> 5</span> <span>if</span>(!<span>empty</span>(<span>$icon</span><span>)){
</span><span> 6</span> <span>//</span><span> print_r($icon[1]);</span>
<span> 7</span> <span>echo</span> "<br/>"<span>;
</span><span> 8</span> <span>$array</span> = @<span>get_headers</span>(<span>$icon</span>[1],1<span>);
</span><span> 9</span> <span>if</span>(<span>preg_match</span>('/200/',<span>$array</span>[0<span>])){
</span><span>10</span> <span>//</span><span> echo "<pre class="brush:php;toolbar:false;"/>"; </span>
<span>11</span> <span>print_r</span>(<span>$icon</span>[1<span>]);
</span><span>12</span> <span>echo</span> "@@##@@$icon</span>[1]."' >;
</span><span>13</span> <span>//</span><span> echo "string";
</span><span>14</span> <span> // print_r($array); </span>
<span>15</span> }<span>else</span><span>{
</span><span>16</span> <span>//</span><span>去掉多余的斜杠</span>
<span>17</span> <span>$url</span> = <span>substr_replace</span>(<span>$url</span>,"",-1<span>);
</span><span>18</span> <span>echo</span> "无效url资源!".<span>$url</span>.<span>$icon</span>[1<span>];
</span><span>19</span> <span>echo</span> "@@##@@$url</span>.<span>$icon</span>[1]."' >;
</span><span>20</span> <span> }
</span><span>21</span>
<span>22</span> }<span>else</span><span>{
</span><span>23</span> <span>//</span><span>这里笔者试了很多种方法,后来发现通过url可以入手,从url截取网址的根目录,由于习惯性的把<strong>文件</strong>名名为favicon.ico,所以可以直接访问类似这样的url得到<strong>图标</strong><strong>文件</strong>,http://wenwen.sogou.com/favicon.ico</span>
<span>24</span> <span>$url</span>=<span>substr</span>(<span>$url</span>,7);<span>//</span><span>去除前面</span>
<span>25</span> <span>$position</span> = <span>strpos</span>(<span>$url</span>, '/'<span>);
</span><span>26</span> <span>$url</span>=<span>substr</span>(<span>$url</span>,0,<span>$position</span><span>);
</span><span>27</span> <span>echo</span> "@@##@@$url</span>."/favicon.ico' >;
</span><span>28</span> <span>//</span><span> echo $url."/favicon.ico<br/>";
</span><span>29</span> <span> //判断<strong>网站</strong>的根目录是否存在.icon<strong>文件</strong>
</span><span>30</span> <span> // $url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
</span><span>31</span> <span> // echo dirname($url);
</span><span>32</span> <span> // if(file_exists("favicon.ico"))
</span><span>33</span> <span> // echo "<p>存在</p>";</span>
<span>34</span> }思路:
先判断源码中是否有那几行添加iocn的代码,如果有就直接抓取代码,再判断是否为有效的url,然后再判断显示,没有则获取根目录后显示。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号