<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 仿照TP框架自帶的PHP驗證碼類

    時間:2025-11-12 12:56:06 php語言

    仿照TP框架自帶的PHP驗證碼類

      以下百分網小編整理的仿照TP框架自帶的PHP驗證碼類,大家自己導入字體,可以按照自己的額需要隨便修改。,更多信息請關注應屆畢業生網!
      <?php
      class Imagecode{
      private $width ;
      private $height;
      private $counts;
      private $distrubcode;
      private $fonturl;
      private $session;
      function __construct($width = 120,$height = 30,$counts = 5,$distrubcode="1235467890qwertyuipkjhgfdaszxcvbnm",$fonturl="C:\Windows\Fonts\TektonPro-BoldCond.otf"){
      $this->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));/pic/div>
      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:\Windows\Fonts\AdobeGothicStd-Bold.otf";/pic/div>
      $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;
      }
      }
      Header("Content-type: image/GIF");
      $imagecode=new  Imagecode(160,50);
      $imagecode->imageout();

    【仿照TP框架自帶的PHP驗證碼類】相關文章:

    一個漂亮的php驗證碼類01-10

    php實現驗證碼制作12-24

    php如何實現驗證碼03-15

    PHP框架的概念09-24

    php驗證碼代碼怎么寫08-30

    php框架Phpbean說明03-03

    如何使用PHP框架01-21

    PHP框架是什么11-13

    PHP自帶的幾個實用的數組函數12-02

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人