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查询并删除数据库多列重复数据的方法(利用数组函数实现)

本文实例讲述了PHP查询并删除数据库多列重复数据的方法。分享给大家供大家参考,具体如下: <?php $con = mysql_connect("localhost",...

php使用curl实现简单模拟提交表单功能

php使用curl实现简单模拟提交表单功能

php 使用curl 进行简单模拟提交表单,供大家参考,具体内容如下 //初始化curl $ch = curl_init(); $url = 'xxx'; $option = [...

PHP中实现接收多个name相同但Value不相同表单数据实例

最近在一个询盘留言管理系统时候一个问题,留言的前台的表单当中出现很多name值相同的input框,这些框是由用户填写的各不相同的值,现在要迁移到php平台上,而且要求不能改变前台的任何表...

PHP 中的面向对象编程:通向大型 PHP 工程的办法

这篇文章介绍在 PHP 的面向对象编程(OOP)。我将演示如何用面向对象的概念编出较少的代码但更好的程序。祝大家好运。     面向对象编程的概念...

centos下file_put_contents()无法写入文件的原因及解决方法

centos下file_put_contents()无法写入文件的原因是没有文件夹权限 直接修改目标文件夹/文件 # chmod 777 文件夹名称 以上这篇centos下file_pu...