php实现QQ空间获取当前用户的用户名并生成图片

yipeiwu_com5年前PHP代码库

本文实例讲述了php实现QQ空间获取当前用户的用户名并生成图片的方法。分享给大家供大家参考。具体如下:

最近发现空间里经常会转载一些含有当前用户昵称和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程序设计有所帮助。

相关文章

php基于socket实现SMTP发送邮件的方法

本文实例讲述了php基于socket实现SMTP发送邮件的方法。分享给大家供大家参考。具体分析如下: php采用socket通过SMTP发送邮件。 用的是php的php-sockets扩...

php调用新浪短链接API的方法

本文实例讲述了php调用新浪短链接API的方法。分享给大家供大家参考。具体方法如下: 复制代码 代码如下:<?php //Sina App_Key define('SINA...

php将数组存储为文本文件方法汇总

php 缓存数组形式的变量,实际上就是将 php 将数组写入到一个文本文件或者后缀名为 .php 存储起来,使用的时候直接调用这个文件。那么如何使用 php 将数组保存为文本格式的文件呢...

解析dedeCMS验证码的实现代码

如下所示:复制代码 代码如下:<?php$rndstring = '';for($i=0; $i<4; $i++) $rndstring .= chr(mt_rand(65,...

php有效防止同一用户多次登录

【问题描述】:同一用户在同一时间多次登录如果不能检测出来,是危险的。因为,你无法知道是否有其他用户在登录你的账户。如何禁止同一用户多次登录呢? 【解决方案】 (1) 每次登录,身份认证成...