有没有人喜欢讨论一下将QQ数字等级输出为图片显示
本帖最后由 laiyilong 于 2012-12-23 06:26:55 编辑 学PHP没多久,突然想到怎样来实现这个,只当是锻炼锻炼,假设等级图片地址如下(晕,貌似只有登录QQ网站后才能显示这几个图片)
/img/2013/01/16/1107071118.png 皇冠
/img/2013/01/16/1107071119.png 太阳
/img/2013/01/16/1107071120.png 月亮
/img/2013/01/16/1107071121.png 星星
我已经写好了一个
$a = base_convert(85,10,4); //85为数字等级<br />$b = array(1=>'star',2=>'moon',3=>'sun',4=>'crown');<br />$e = strlen($a);<br />for($i=0;$i<$e;$i++){<br /> $c = (int)substr($a,$i,1);<br /> if($c>0) for($d=0;$d<$c;$d++) echo '<img src="http://id.qq.com/level/img/'.$b[$e-$i].'.png" / alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" >';<br />}
登录后复制
主要是利用十进制转四进制来实现,不知道哪位还有更好的办法来实现呢?
------解决方案--------------------if(isset($_GET['img'])) {<br /> die(file_get_contents("http://id.qq.com/level/img/$_GET[img].png"));<br />}<br />$a = base_convert(85,10,4); //85为数字等级<br />$b = array(1=>'star',2=>'moon',3=>'sun',4=>'crown');<br />$e = strlen($a);<br />for($i=0;$i<$e;$i++){<br /> $c = (int)substr($a,$i,1);<br /> if($c>0) for($d=0;$d<$c;$d++) echo '<img src="?img='.$b[$e-$i].'" / alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" >';<br />}
登录后复制
------解决方案--------------------<br><?php <br />function qqdj($nowlevel)<br>{<br> /*星星1 月亮4 太阳16 皇冠64 */<br> $a = $b = $c = $d = 0; <br> $d = floor($nowlevel/64);<br> $dj= $nowlevel%64;<br> $c = floor($dj/16);<br> $dj = $dj%16;<br> $b = floor($dj/4);<br> $a = $dj%4;<br> return array($a,$b,$c,$d);<br>}<br><br>function qqdjImg($nowlevel)<br>{<br> /*星星1 月亮4 太阳16 皇冠64 */<br> $arrDJ = array();<br> $arrDJ[] = floor($nowlevel/64);<br> $dj= $nowlevel%64;<br> $arrDJ[] = floor($dj/16);<br> $dj = $dj%16;<br> $arrDJ[] = floor($dj/4);<br> $arrDJ[] = $dj%4;<br> <br> $arrImg = array(<br> '<img alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" >',<br> '<img alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" >',<br> '<img alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" >',<br> '<img alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" >',<br> );<br> $html = '';<br> foreach ($arrDJ as $k => $v) <br> {<br> $html .= str_repeat($arrImg[$k],$v);<br> }<br> <br> print_r($arrDJ);<br> return $html;<br>}<br><br><br><br>$dj = 37;<br>$dj = 71;<br>echo qqdjImg($dj);<br><br>/*<br>X-Powered-By: PHP/5.2.0<br>Content-type: text/html<br><br>Array<br>(<br> [0] => 1<br> [1] => 0<br> [2] => 1<br> [3] => 3<br>)<br><img alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" ><img alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" ><img alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" ><img alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" ><img alt="有没有人喜欢讨论一上将QQ数字等级输出为图片显示" ><div class="clear">
</div>
登录后复制