最近发现空间里经常会转载一些含有当前用户昵称和qq号的图片,很好奇,研究了一下原理
原理很简单,图片是利用php生成的,好吧,直接上代码
图片源代码:
<?php $ment = $_SERVER["HTTP_REFERER"]; if($ment == 'http://cnc.qzs.qq.com/qzone/newblog/v5/editor.html'){ header("HTTP/1.0 500 Internal Server Error"); exit;} preg_match("#[0-9]{5,11}#",$ment,$rr); $r=$rr[0]; $webtext=file_get_contents('http://www.phperzone.cn/demo/qqinfo-service.php?qq='.$r); preg_match('#"nickname":"(.*?)"#',$webtext,$rr); $rrr=$rr[1]; ob_clean(); header("Content-type:image/png"); $im=imagecreatefromjpeg("1.jpg"); $black = ImageColorAllocate($im, 56,73,136); $rrr = mb_convert_encoding($rrr, "utf-8","UTF-8"); imagettftext($im,20,0,90,68,$black,"./simsun.ttc",$rrr); imagettftext($im,26,0,87,125,$black,"./simsun.ttc",$r); imagejpeg($im); imagedestroy($im); ?>
请求的接口获取通过qq号获取昵称:
<?php header("Content-Type:text/html;charset=utf-8"); $qq = $_GET ["qq"]; echo htmlspecialchars(file_get_contents('http://r.qzone.qq.com/cgi-bin/user/cgi_personal_card'. "?uin=" . $qq)); ?>
希望本文所述对大家的php程序设计有所帮助。
友情提示:垃圾评论一律封号 加我微信:826096331拉你进VIP群学习群