为什么写了for循环后只显示一个矩形的图形?

来源:1-4 PHP验证码制作之增加点干扰元素

蓝天白云太阳雨2015

2016-12-15 13:43

for($i;$i<4;$i++){
	$fontsize = 5; //字体大小
	$fontcolor = imagecolorallocate($image,0,0,0);//字体颜色,黑色
	$fontcontent = rand(0,9);	//生成随机数字

	//定义坐标
	$x = ($i*100/4) + rand(5,10);
	$y = rand(5,10);

	imagestring($image, $fontsize, $x, $y, $fontcontent, $fontcolor);//画出字符串

}

将这个写了之后 ,只显示这样的http://img.mukewang.com/58522d860001fb2404550152.jpg

写回答 关注

1回答

  • Jefferson_golden
    2016-12-18 19:26:46
    已采纳

    首先在创建完画布、分配颜色、填充、循环添加字符串之后,一定要用header('content-type:image/png')告诉浏览器要输出一个png图像,然后就是渲染的字符要用对函数,一般来讲显示数字和字母用imagestring()即可,还有就是查看php.ini的GD库有没打开。

    小小水2 回复蓝天白云太阳...

    大兄弟,你for循环里面的第一个参数$i没有赋初始值

    2017-02-20 02:08:01

    共 3 条回复 >

PHP实现验证码制作

各种形态验证码核心原理与实现技巧,讲解实现过程中的技术难点

37929 学习 · 338 问题

查看课程

相似问题