首页 > 后端开发 > php教程 > php-生成验证码 php验证码下载 php邮箱验证码 php网站验证

php-生成验证码 php验证码下载 php邮箱验证码 php网站验证

WBOY
发布: 2016-07-29 08:50:45
原创
1045 人浏览过
<span><?php </span><span><em>/**
</em></span><span><em> * Created by PhpStorm.
</em></span><span><em> * User: 
</em></span><span><em> * Date: 2016/4/20
</em></span><span><em> * Time: 20:07
</em></span><span><em> */
</em></span><span><em></em></span><span>session_start()</span><span>;
</span><span>//</span><span>画一张背景图
</span><span>$image</span><span>=imagecreatetruecolor(</span><span>100</span><span>,</span><span>30</span><span>)</span><span>;
</span><span>$bgcolor</span><span>=imagecolorallocate(</span><span>$image</span><span>,</span><span>255</span><span>,</span><span>255</span><span>,</span><span>255</span><span>)</span><span>;
</span><span>imagefill(</span><span>$image</span><span>,</span><span>0</span><span>,</span><span>0</span><span>,</span><span>$bgcolor</span><span>)</span><span>;
</span><span>/*//</span><span>生成四位随机数字</span><span>   for($i=0;$i<span>      $f
</span><span>      $f
</span><span>      $f
</span><span>      //</span><span>数字的显示位置</span><span>      $x=($i*100/4)+rand(5,9);
</span><span>      $y=rand(5,10);
</span><span>      imagestring($image,$fonsize,$x,$y,$fontcontent,$foncolor);
</span><span>   }*/
</span><span>$captch_code</span><span>=</span><span>''</span><span>;
</span><span>//</span><span>生成数字字母混合验证码
</span><span>for</span><span>(</span><span>$i</span><span>=</span><span>0</span><span>;</span><span>$i</span><span><span>4</span><span>;</span><span>$i</span><span>++){
</span><span>$fonsize</span><span>=</span><span>6</span><span>;
</span><span>$fontcolor</span><span>=imagecolorallocate(</span><span>$image</span><span>,</span><span>rand(</span><span>0</span><span>,</span><span>120</span><span>)</span><span>,</span><span>rand(</span><span>0</span><span>,</span><span>120</span><span>)</span><span>,</span><span>rand(</span><span>0</span><span>,</span><span>120</span><span>))</span><span>;
</span><span>$data</span><span>=</span><span>"abcdefghjklmnpqrstuvwxy13456789"</span><span>;
</span><span>$fontcontent</span><span>=substr(</span><span>$data</span><span>,</span><span>rand(</span><span>0</span><span>,</span><span>strlen(</span><span>$data</span><span>))</span><span>,</span><span>1</span><span>)</span><span>;
</span><span>$captch_code</span><span>.=</span><span>$fontcontent</span><span>;
</span><span>//</span><span>验证码的位置
</span><span>$x</span><span>=(</span><span>$i</span><span>*</span><span>100</span><span>/</span><span>4</span><span>)+rand(</span><span>5</span><span>,</span><span>10</span><span>)</span><span>;
</span><span>$y</span><span>=rand(</span><span>5</span><span>,</span><span>10</span><span>)</span><span>;
</span><span>//
</span><span>imagestring(</span><span>$image</span><span>,</span><span>$fonsize</span><span>,</span><span>$x</span><span>,</span><span>$y</span><span>,</span><span>$fontcontent</span><span>,</span><span>$fontcolor</span><span>)</span><span>;
</span><span>}
</span><span>$_SESSION</span><span>[</span><span>'authcode'</span><span>]=</span><span>$captch_code</span><span>;
</span><span>//</span><span>添加干扰元素</span><span>:</span><span>点
</span><span>for</span><span>(</span><span>$i</span><span>=</span><span>0</span><span>;</span><span>$i</span><span><span>200</span><span>;</span><span>$i</span><span>++){
</span><span>$pointcolor</span><span>=imagecolorallocate(</span><span>$image</span><span>,</span><span>rand(</span><span>55</span><span>,</span><span>200</span><span>)</span><span>,</span><span>rand(</span><span>55</span><span>,</span><span>200</span><span>)</span><span>,</span><span>rand(</span><span>55</span><span>,</span><span>200</span><span>))</span><span>;
</span><span>imagesetpixel(</span><span>$image</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>99</span><span>)</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>99</span><span>)</span><span>,</span><span>$pointcolor</span><span>)</span><span>;
</span><span>}
</span><span>//</span><span>添加干扰元素:线
</span><span>for</span><span>(</span><span>$i</span><span>=</span><span>0</span><span>;</span><span>$i</span><span><span>3</span><span>;</span><span>$i</span><span>++){
</span><span>$linecolor</span><span>=imagecolorallocate(</span><span>$image</span><span>,</span><span>rand(</span><span>80</span><span>,</span><span>220</span><span>)</span><span>,</span><span>rand(</span><span>80</span><span>,</span><span>220</span><span>)</span><span>,</span><span>rand(</span><span>80</span><span>,</span><span>220</span><span>))</span><span>;
</span><span>imageline(</span><span>$image</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>99</span><span>)</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>29</span><span>)</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>99</span><span>)</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>29</span><span>)</span><span>,</span><span>$linecolor</span><span>)</span><span>;
</span><span>}
</span><span>   header(</span><span>'content-type: image/png'</span><span>)</span><span>;
</span><span>imagepng(</span><span>$image</span><span>)</span><span>;
</span><span>imagedestroy(</span><span>$image</span><span>)</span><span>;
</span><span>?></span></span></span></span></span></span>
登录后复制

以上就介绍了php-生成验证码,包括了验证码,php方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板