资源描述:
《《PHP编程最快明白》第七讲:php图片验证码与缩略图_》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、《PHP编程最快明白》第七讲:php图片验证码与缩略图_这个是输出4个验证码的例子,对于汉字,需要font文件和imagettftext函数,用到的时候大家再网上搜索吧。实例22图片验证的核心代码代码如下:?php//header("content-type:image/png");$num='1234';$imagewidth=60;$imageheight=18;$numimage=imagecreate($imagewidth,$imageheight);imagecolorallocate($numimage,
2、240,240,240);for($i=0;$istrlen($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;$i200;$i++){$randc
3、olor=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函数;你还要用到s
4、ession保存这个随机数;假如需要转成utf-8,需要iconv函数。实例23缩略图代码如下:?phpclassSimpleImage{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($filena
5、me);}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($i
6、mage_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)
7、;}}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-imag
8、e);}functiongetHeight(){returnimagesy($this-image);}functionresizeToHeight($height){$ratio=$height/$this-getHeight();$width=$this-getWidth()*$ratio;$this-resize($widt