老师,为什么只有一个字母?
mycode.php
<?php
//生成验证码
$im = imagecreatetruecolor(400,200);
$back = imagecolorallocate($im,mt_rand(200,250),mt_rand(200,250),mt_rand(200,250));
imagefill($im,0,0,$back);
//生成随机字符串
$string = 'abcdefg123456789ABCDEFGHIGK';
//生成随机字符串
for($i=0;$i<4;$i++)
{
//创建字体颜色
$stringColor = imagecolorallocate($im,mt_rand(50,150),mt_rand(50,150),mt_rand(50,150));
$str = $string[mt_rand(0,strlen($string)-1)];
imagettftext($im,15,mt_rand(-10,10),20+$i*15,100,$stringColor,'font/comicz.ttf',$str);
}
//图像中写入字符串
imagestring($im,5,mt_rand(20,imagesx($im)-50),mt_rand(10,imagesy($im)),$str,$stringColor);
ob_clean();
header('Content-Type:image/png');
imagepng($im);
----------------------------------------------
正在回答
您好,字符显示不同颜色参考如下:
<?php
//生成验证码
$im = imagecreatetruecolor(400,200);
$back = imagecolorallocate($im,mt_rand(200,250),mt_rand(200,250),mt_rand(200,250));
imagefill($im,0,0,$back);
//生成随机字符串
$string = 'abcdefg123456789ABCDEFGHIGK';
//生成随机字符串
for($i=0;$i<4;$i++)
{
//创建字体颜色
$stringColor = imagecolorallocate($im,mt_rand(50,150),mt_rand(50,150),mt_rand(50,150));
// 会将获取的随机数拼接在一起
$str = $string[mt_rand(0,strlen($string)-1)];
imagettftext($im,15,mt_rand(-10,10),20+$i*15,100,$stringColor,'font/comicz.ttf',$str);
}
header('Content-Type:image/png');
imagepng($im);祝学习愉快!
同学你好,因在循环中生成的字符串没有进行拼接导致在循环中进行覆盖。代码如下:
<?php
//生成验证码
$im = imagecreatetruecolor(400,200);
$back = imagecolorallocate($im,mt_rand(200,250),mt_rand(200,250),mt_rand(200,250));
imagefill($im,0,0,$back);
//生成随机字符串
$string = 'abcdefg123456789ABCDEFGHIGK';
//生成随机字符串
for($i=0;$i<4;$i++)
{
//创建字体颜色
$stringColor = imagecolorallocate($im,mt_rand(50,150),mt_rand(50,150),mt_rand(50,150));
// 会将获取的随机数拼接在一起
$str .= $string[mt_rand(0,strlen($string)-1)];
imagettftext($im,15,mt_rand(-10,10),20+$i*15,100,$stringColor,'font/comicz.ttf',$str);
}
//图像中写入字符串
imagestring($im,5,mt_rand(20,imagesx($im)-50),mt_rand(10,imagesy($im)),$str,$stringColor);
ob_clean();
header('Content-Type:image/png');
imagepng($im);祝学习愉快!
- 参与学习 人
- 提交作业 225 份
- 解答问题 3372 个
掌握用PHP开发互联网网站的必备功能,掌握当下主流的Linux系统开发,并熟练使用热门框架ThinkPhp开发电商团购项目,是通向PHP工程师必经之路。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星