php实现在服务器端调整图片大小的方法
本文实例讲述了php实现在服务器端调整图片大小的方法。分享给大家供大家参考。具体分析如下:
在服务器端完成图片大小的调整,会比在浏览器的处理有很多的好处。
本文介绍了PHP如何在服务器端调整图片大小。
代码包括两部分:
①imageResizer()isusedtoprocesstheimage
②loadimage()insertstheimageurlinasimplerformat
<?php functionimageResizer($url,$width,$height){ header('Content-type:image/jpeg'); list($width_orig,$height_orig)=getimagesize($url); $ratio_orig=$width_orig/$height_orig; if($width/$height>$ratio_orig){ $width=$height*$ratio_orig; }else{ $height=$width/$ratio_orig; } //Thisresamplestheimage $image_p=imagecreatetruecolor($width,$height); $image=imagecreatefromjpeg($url); imagecopyresampled($image_p,$image,0,0,0,0,$width,$height,$width_orig,$height_orig); //Outputtheimage imagejpeg($image_p,null,100); } //workswithbothPOSTandGET $method=$_SERVER['REQUEST_METHOD']; if($method=='GET'){ imageResize($_GET['url'],$_GET['w'],$_GET['h']); }elseif($method=='POST'){ imageResize($_POST['url'],$_POST['w'],$_POST['h']); } //makestheprocesssimpler functionloadImage($url,$width,$height){ echo'image.php?url=',urlencode($url), '&w=',$width, '&h=',$height; } ?>
用法:
//Abovecodewouldbeinafilecalledimage.php. //Imageswouldbedisplayedlikethis: <imgsrc="<?phploadImage('image.jpg',50,50)?>"alt=""/>
希望本文所述对大家的php程序设计有所帮助。