通过QQ邮箱获取QQ头像
首先,要判断,是不是QQ邮箱
QQ邮箱的格式是 xx……xx@qq.com
我们可以取@后面两个字符
如果后面的两个字符等于‘qq’
或者后面所有的字符为’qq.com’
那么这个邮箱就是QQ邮箱
截取字符串第一个字符后面所有的内容
substr($str,strripos($str,"@")+1);
判断是不是QQ头像
$x=substr($str,strripos($str,"@")+1);
if($x=="qq.com"){
echo "ok";
}
然后,根据qq邮箱获取qq
我们知道截取字符串第一个字符前面所有的内容
substr($str,0,strpos($str, '@'))
通过上述语句,我们获取的是@前面的内容,也就是QQ号了。
通过API获取QQ头像
$qqimg = 'http://q1.qlogo.cn/g?b=qq&nk='.$qq.'&s=100&t='. 'time()';
完整的代码如下:
<?php
$str='2686485465@qq.com';
$x=substr($str,strripos($str,"@")+1);
if($x=="qq.com"){
$qqh=substr($str,0,strpos($str, '@'));
$qqimage='http://q1.qlogo.cn/g?b=qq&nk='.$qqh.'&s=100&t='. 'time()';
}
?>
<img src="<?php echo $qqimage ?>">
测试:在宝塔里面新建一个test文件,你可以将这个代码直接粘贴进php里面,然后进入这个php界面,就会看到头像
ok,但是如果他输入的不是QQ邮箱呢?那就调用随机头像API,完整代码如下
<?php
$str='2686485465@qq.com';
$x=substr($str,strripos($str,"@")+1);
if($x=="qq.com"){
$qqh=substr($str,0,strpos($str, '@'));
$qqimage='http://q1.qlogo.cn/g?b=qq&nk='.$qqh.'&s=100&t='. 'time()';
}else{
$qqimage = 'https://api.btstu.cn/sjtx/api.php?lx=c1&format=images';
}
?>
<img src="<?php echo $qqimage ?>">