午夜国产狂喷潮在线观看|国产AⅤ精品一区二区久久|中文字幕AV中文字幕|国产看片高清在线

    《PHP編程最快明白》第七講:php圖片驗證碼與縮略圖
    來源:易賢網(wǎng) 閱讀:1065 次 日期:2014-05-18 15:04:48
    溫馨提示:易賢網(wǎng)小編為您整理了“《PHP編程最快明白》第七講:php圖片驗證碼與縮略圖”,方便廣大網(wǎng)友查閱!

    這個是輸出4個驗證碼的例子,對于漢字,需要font文件和imagettftext函數(shù),用到的時候大家再網(wǎng)上搜索吧。

    實例22圖片驗證的核心代碼

    代碼如下:

    <?php

    //header("content-type:image/png");

    $num='1234';

    $imagewidth=60;

    $imageheight=18;

    $numimage=imagecreate($imagewidth,$imageheight);

    imagecolorallocate($numimage,240,240,240);

    for($i=0;$i<strlen($num);$i++){

    $x=mt_rand(1,8)+$imagewidth*$i/4;

    $y=mt_rand(1,$imageheight/4);

    $color=imagecolorallocate($numimage,mt_rand(0,150),mt_rand(0,150),mt_rand(0,150));

    imagestring($numimage,5,$x,$y,$num[$i],$color);

    }

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

    $randcolor=imagecolorallocate($numimage,rand(200,255),rand(200,255),rand(200,255));

    imagesetpixel($numimage,rand()%70,rand()%20,$randcolor);

    }

    imagepng($numimage);

    imagedestroy($numimage);

    ?>

    這個是輸出4個驗證碼的例子,對于漢字,需要font文件和imagettftext函數(shù),用到的時候大家再網(wǎng)上搜索吧。你要產(chǎn)生隨機數(shù),那有mt_rand函數(shù);你還要用到session保存這個隨機數(shù);如果需要轉(zhuǎn)成utf-8,需要iconv函數(shù)。

    實例23縮略圖

    代碼如下:

    <?php

    classSimpleImage{

    var$image;

    var$image_type;

    functionload($filename){

    $image_info=getimagesize($filename);

    $this->image_type=$image_info[2];

    if($this->image_type==IMAGETYPE_JPEG){

    $this->image=imagecreatefromjpeg($filename);

    }elseif($this->image_type==IMAGETYPE_GIF){

    $this->image=imagecreatefromgif($filename);

    }elseif($this->image_type==IMAGETYPE_PNG){

    $this->image=imagecreatefrompng($filename);

    }

    }

    functionsave($filename,$image_type=IMAGETYPE_JPEG,$compression=75,$permissions=null){

    if($image_type==IMAGETYPE_JPEG){

    imagejpeg($this->image,$filename,$compression);

    }elseif($image_type==IMAGETYPE_GIF){

    imagegif($this->image,$filename);

    }elseif($image_type==IMAGETYPE_PNG){

    imagepng($this->image,$filename);

    }

    if($permissions!=null){

    chmod($filename,$permissions);

    }

    }

    functionoutput($image_type=IMAGETYPE_JPEG){

    if($image_type==IMAGETYPE_JPEG){

    imagejpeg($this->image);

    }elseif($image_type==IMAGETYPE_GIF){

    imagegif($this->image);

    }elseif($image_type==IMAGETYPE_PNG){

    imagepng($this->image);

    }

    }

    functiongetWidth(){

    returnimagesx($this->image);

    }

    functiongetHeight(){

    returnimagesy($this->image);

    }

    functionresizeToHeight($height){

    $ratio=$height/$this->getHeight();

    $width=$this->getWidth()*$ratio;

    $this->resize($width,$height);

    }

    functionresizeToWidth($width){

    $ratio=$width/$this->getWidth();

    $height=$this->getheight()*$ratio;

    $this->resize($width,$height);

    }

    functionscale($scale){

    $width=$this->getWidth()*$scale/100;

    $height=$this->getheight()*$scale/100;

    $this->resize($width,$height);

    }

    functionresize($width,$height){

    $new_image=imagecreatetruecolor($width,$height);

    imagecopyresampled($new_image,$this->image,0,0,0,0,$width,$height,$this->getWidth(),$this->getHeight());

    $this->image=$new_image;

    }

    }

    $newfile=UPLOAD_DIR."/icons/".md5($_SESSION['USER']->email).".jpg";//上傳文件保存的目錄

    $image=newSimpleImage();

    $image->load($_FILES['icons']['tmp_name']);//上傳的臨時文件名

    $image->resizeToWidth(80);設(shè)置寬度

    $image->save($newfile);

    ?>

    更多信息請查看IT技術(shù)專欄

    更多信息請查看網(wǎng)絡(luò)編程

    2025國考·省考課程試聽報名

    • 報班類型
    • 姓名
    • 手機號
    • 驗證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)