我怎么会偶尔有生成三位验证码的情况

来源:1-7 PHP验证码制作之通过SESSION存储验证信息

香饽饽0

2016-02-10 20:11

for($i=0;$i<4;$i++){//随机4个字符

$fontsize = 6;

$fontcolor = imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120));

$data = '0123456789abcdefghijklmnopqrstuvwxyz';

$fontcontent = substr($data,rand(0,strlen($data)),1);

$captch_code.=$fontcontent;

$x = ($i*100/4)+(rand(5,10));

$y = rand(5,10);

imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor);

}



写回答 关注

1回答

  • xusiman
    2016-02-17 11:24:50

    字符串第1位从0开始,字符串长度减1就解决问题了

    bala_0

    我改了strlen()

    2016-04-05 14:36:38

    共 2 条回复 >

PHP实现验证码制作

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

37920 学习 · 321 问题

查看课程

相似问题