有没有人喜欢讨论一下将QQ数字等级输出为图片显示
本帖最后由 laiyilong 于 2012-12-23 06:26:55 编辑
学PHP没多久,突然想到怎样来实现这个,只当是锻炼锻炼,假设等级图片地址如下(晕,貌似只有登录QQ网站后才能显示这几个图片)
http://www.myexception.cn/img/2013/01/16/1107071118.png 皇冠
http://www.myexception.cn/img/2013/01/16/1107071119.png 太阳
http://www.myexception.cn/img/2013/01/16/1107071120.png 月亮
http://www.myexception.cn/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 />
}
Copy after login
主要是利用十进制转四进制来实现,不知道哪位还有更好的办法来实现呢?
------解决方案--------------------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 />
}
Copy after login
------解决方案--------------------<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>
Copy after login
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn