php绘图当用之验证码
Jun 13, 2016 pm 12:16 PM
img
quot
rand
php绘图应用之验证码
在绘图里面,就像之前所说的,php的绘图是真正动态绘图,虽然自己承认会出的图是很不好看的,但我们主要关注的应该还是数据处理。
验证码我们几乎无处不见,它的产生和绘图技术是密不可分的,其实,简单的验证码绘制出来是很简单的,就像下面的一段代码就可以绘制出包含字母和数字的元素:
<?php $checkCode=""; for($i=0; $i<=3;$i++){ $checkCode.=dechex(rand(1,15)); } session_start(); $_SESSION['checkCode']=$checkCode; //建立画布 $img_1=imagecreatetruecolor(110, 30); $red=imagecolorallocate($img_1, 255, 0, 0); imagestring($img_1, 5, 0, 0, $checkCode, $red); header("Content-type: image/png"); imagepng($img_1); imagedestroy($img_1);?>
登入後複製
上面的代码只是简单的说了一下验证码的绘制,其实代码方面并没有进行安全处理。
下面是相对的把验证码处理的相对复杂了一些:
<?php $checkCode=""; for($i=0; $i<=3;$i++){ $checkCode.=dechex(rand(1,15)); } session_start(); $_SESSION['checkCode']=$checkCode; //建立画布 $img_1=imagecreatetruecolor(70, 40); //必须是先创建画布,在创建颜色。 $red=imagecolorallocate($img_1, rand(0,255), rand(0,255), rand(0,255)); for($k=0; $k<=20; $k++){ imageline($img_1, rand(0,50),rand(0,30),0,0,0,0, imagecolorallocate($img_1, rand(0,255), rand(0,255), rand(0,255))); } imagestring($img_1, rand(3,7), rand(0,40), rand(0,20), $checkCode, $red); header("Content-type: image/png"); imagepng($img_1); imagedestroy($img_1);?>
登入後複製
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

如何解決 golang 中的 'undefined: rand.Seed” 錯誤?
