·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> php网站开发 >> php GD库生成缩略图

php GD库生成缩略图

作者:佚名      php网站开发编辑:admin      更新时间:2022-07-23
php GD库生成缩略图分享一个利用php GD库生成缩略图的例子。php利用GD库生成缩略图。代码:
  1. <formmethod="post"action="suo_do.php"enctype="multipart/form-data">
  2. <inputtype="file"name="pic"/>
  3. <inputtype="submit"value="上传1"/>
  4. </form>
  5. <?php
  6. header("content-type:text/html;charset=gbk");
  7. ini_set("date.timezone","Asia/chong");
  8. //判断文件是否为空
  9. if(empty($_FILES)){
  10. echo"上传文件过大";
  11. exit;
  12. }
  13. //判断文件上传是否有错误
  14. if($_FILES['pic']['error']){
  15. echo"上传文件";
  16. exit;
  17. }
  18. //判断文件类型是否非法获取文件后缀
  19. $allowtype=array("jpg","png","jpeg","gif");
  20. $a=explode('.',$_FILES['pic']['name']);
  21. $index=count($a)-1;
  22. $ex=strtolower($a[$index]);
  23. if(!in_array($ex,$allowtype)){
  24. echo"上传文件非法";
  25. exit;
  26. }
  27. $file=date('YmdHis').rand().".".$ex;
  28. $src=$_FILES['pic']['tmp_name'];
  29. $des="upload/".$file;
  30. $rs=move_uploaded_file($src,$des);
  31. //缩略图
  32. //读取已经上传图片
  33. $image=imagecreatefromjpeg($des);
  34. $a=getimagesize($des);
  35. $w=$a[0];
  36. $h=$a[1];
  37. if($w>$h){
  38. $width=300;
  39. $height=$width/$w*$h;
  40. }elseif($w<$h){
  41. $height=300;
  42. $width=$height/$h*$w;
  43. }else{
  44. $width=300;
  45. $height=300;
  46. }www.jbxue.com
  47. //创建空白新图片
  48. $newimage=imagecreatetruecolor($width,$height);
  49. //copy源图片内容copy新图片
  50. imagecopyresized($newimage,$image,0,0,0,0,$width,$height,$w,$h);
  51. $filename="upload/s_".$file;
  52. imagejpeg($newimage,$filename);