程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP驗證碼代碼的方法

PHP驗證碼代碼的方法

編輯:關於PHP編程

       小編就為大家分享一個漂亮的php驗證碼類。需要的朋友可以過來參考下!

      php驗證碼類代碼

      width=$width;

      $this->height=$height;

      $this->counts=$counts;

      $this->distrubcode=$distrubcode;

      $this->fonturl=$fonturl;

      $this->session=$this->sessioncode();

      session_start();

      $_SESSION["code"]=$this->session;

      }

      function imageout(){

      $im=$this->createimagesource();

      $this->setbackgroundcolor($im);

      $this->set_code($im);

      $this->setdistrubecode($im);

      ImageGIF($im);

      ImageDestroy($im);

      }

      private function createimagesource(){

      return imagecreate($this->width,$this->height);

      }

      private function setbackgroundcolor($im){

      $bgcolor = ImageColorAllocate($im, rand(200,255),rand(200,255),rand(200,255));//±3?°??é?

      imagefill($im,0,0,$bgcolor);

      }

      private function setdistrubecode($im){

      $count_h=$this->height;

      $cou=floor($count_h*2);

      for($i=0;$i<$cou;$i++){

      $x=rand(0,$this->width);

      $y=rand(0,$this->height);

      $jiaodu=rand(0,360);

      $fontsize=rand(8,15);

      $fonturl=$this->fonturl;

      $originalcode = $this->distrubcode;

      $countdistrub = strlen($originalcode);

      $dscode = $originalcode[rand(0,$countdistrub-1)];

      $color = ImageColorAllocate($im, rand(40,140),rand(40,140),rand(40,140));

      imagettftext($im,$fontsize,$jiaodu,$x,$y,$color,$fonturl,$dscode);

      }

      }

      private function set_code($im){

      $width=$this->width;

      $counts=$this->counts;

      $height=$this->height;

      $scode=$this->session;

      $y=floor($height/2)+floor($height/4);

      $fontsize=rand(30,35);

      $fonturl="C:WindowsFontsAdobeGothicStd-Bold.otf";//$this->fonturl;

      $counts=$this->counts;

      for($i=0;$i<$counts;$i++){

      $char=$scode[$i];

      $x=floor($width/$counts)*$i+8;

      $jiaodu=rand(-20,30);

      $color = ImageColorAllocate($im,rand(0,50),rand(50,100),rand(100,140));

      imagettftext($im,$fontsize,$jiaodu,$x,$y,$color,$fonturl,$char);

      }

      }

      private function sessioncode(){

      $originalcode = $this->distrubcode;

      $countdistrub = strlen($originalcode);

      $_dscode = "";

      $counts=$this->counts;

      for($j=0;$j<$counts;$j++){

      $dscode = $originalcode[rand(0,$countdistrub-1)];

      $_dscode.=$dscode;

      }

      return $_dscode;

      }

      }

      PHP驗證碼代碼實例示范 建一個輸出文件代碼:

      Header("Content-type: image/GIF");

      $imagecode=new Imagecode(150,2);

      $imagecode->imageout();

      PHP驗證碼類就這麼簡單,可以用了!

    PHP驗證碼代碼的方法  三聯

      源碼。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved