一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - 《PHP編程最快明白》第七講:php圖片驗證碼與縮略圖

《PHP編程最快明白》第七講:php圖片驗證碼與縮略圖

2019-11-11 13:26PHP編程網 PHP教程

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

實例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函數,用到的時候大家再網上搜索吧。你要產生隨機數,那有mt_rand函數;你還要用到session保存這個隨機數;如果需要轉成utf-8,需要iconv函數。 

實例23 縮略圖 

復制代碼代碼如下:


<?php 
class SimpleImage { 
var $image; 
var $image_type; 
function load($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); 


function save($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); 


function output($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); 


function getWidth() { 
return imagesx($this->image); 

function getHeight() { 
return imagesy($this->image); 

function resizeToHeight($height) { 
$ratio = $height / $this->getHeight(); 
$width = $this->getWidth() * $ratio; 
$this->resize($width,$height); 

function resizeToWidth($width) { 
$ratio = $width / $this->getWidth(); 
$height = $this->getheight() * $ratio; 
$this->resize($width,$height); 

function scale($scale) { 
$width = $this->getWidth() * $scale/100; 
$height = $this->getheight() * $scale/100; 
$this->resize($width,$height); 

function resize($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 = new SimpleImage(); 
$image->load($_FILES['icons']['tmp_name']);//上傳的臨時文件名 
$image->resizeToWidth(80);設置寬度 
$image->save($newfile); 
?> 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美一级鲁丝片免费看 | 久草大 | 亚洲精品综合一区二区 | 精品一区二区三区色花堂 | 亚洲成人看片 | 国产专区视频在线观看 | 羞羞答答影院在线 | 国产精品久久现线拍久青草 | 国色天香社区在线视频免费观看 | 男公厕里同性做爰 | 国产小视频免费看 | 天堂精品高清1区2区3区 | 朝鲜美女免费一级毛片 | 俄罗斯烧性春三级k8播放 | 国产成人亚洲综合91精品555 | 91青青草原 | 色综合伊人色综合网站中国 | 欧美激情影音先锋 | 亚洲不卡视频 | 国产亚洲精品精品国产亚洲综合 | 精品一区heyzo在线播放 | 忘忧草在线社区WWW日本-韩国 | 91夜夜操 | 精品日韩欧美一区二区三区 | 黑人巨大爆粗亚裔女人 | 996热视频 | 天堂俺去俺来也www久久婷婷 | 扒开斗罗美女了的胸罩和内裤漫画 | 午夜一区二区免费视频 | 成人看片免费无限观看视频 | 无码AV毛片色欲欧洲美洲 | 手机看片黄色 | 扒开双腿猛进入爽爽视频ai | 国产精品区一区二区免费 | 精品成人一区二区 | 红楼影视h38bar在线线播放 | 天天做日日做 | 我半夜摸妺妺的奶C了她软件 | 日本日日黄 | 成年性午夜免费视频网站不卡 | 欧美 亚洲 综合 卡通 另类 区 |