欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php 自定义验证码函数的问题

程序员文章站 2024-01-20 11:52:52
...
php 请教各位一个问题:
php 自定义验证码函数
function random_text($count, $rm_similar = false)
{
$chars = array_flip(array_merge(range(0, 9), range('A', 'Z')));
if ($rm_similar)
{
unset($chars[0], $chars[1], $chars[2], $chars[5], $chars[8],
$chars['B'], $chars['I'], $chars['O'], $chars['Q'],
$chars['S'], $chars['U'], $chars['V'], $chars['Z']);
}

for ($i = 0, $text = ''; $i {
$text .= array_rand($chars);
}
return $text;
}
?>
这段代码是什么作用了,$chars[5]这些是啥意思:unset($chars[0], $chars[1], $chars[2], $chars[5], $chars[8],
$chars['B'], $chars['I'], $chars['O'], $chars['Q'],
$chars['S'], $chars['U'], $chars['V'], $chars['Z']);
这个函数调用的话,怎么调用了,给个例子。

回复讨论(解决方案)

你运行下不就明白了。
unset 释放给定的变量

这只是取随机文本的, 不是取验证码的



示例:
//1.取7位文本代码,并去除unset里的值 random_text(7,true);//2.取5位文本代码,不去除unset里的值,这里第二个参数按函数默认的来即为falserandom_text(5);