Heim >Backend-Entwicklung >PHP-Tutorial >php GD库生成缩略图的例子

php GD库生成缩略图的例子

WBOY
WBOYOriginal
2016-07-25 08:54:51943Durchsuche
  1. header("content-type:text/html;charset=gbk");
  2. ini_set("date.timezone","Asia/chong");
  3. //判断文件是否为空
  4. if(empty($_FILES)){
  5. echo"上传文件过大";
  6. exit;
  7. }
  8. //判断文件上传是否有错误
  9. if($_FILES['pic']['error']){
  10. echo "上传文件";
  11. exit;
  12. }
  13. //判断文件类型是否非法获取文件后缀
  14. $allowtype=array("jpg","png","jpeg","gif");
  15. $a=explode('.',$_FILES['pic']['name']);
  16. $index=count($a)-1;
  17. $ex=strtolower($a[$index]);
  18. if(!in_array($ex,$allowtype)){
  19. echo "上传文件非法";
  20. exit;
  21. }
  22. $file=date('YmdHis').rand().".".$ex;
  23. $src=$_FILES['pic']['tmp_name'];
  24. $des="upload/".$file;
  25. $rs=move_uploaded_file($src,$des);
  26. //缩略图

  27. //读取已上传图片
  28. $image=imagecreatefromjpeg($des);
  29. $a=getimagesize($des);
  30. $w=$a[0];
  31. $h=$a[1];
  32. if($w>$h){
  33. $width=300;
  34. $height=$width/$w*$h;
  35. }else if($w$height=300;
  36. $width=$height/$h*$w;
  37. }else{
  38. $width=300;
  39. $height=300;
  40. }
  41. //创建空白新图片
  42. $newimage=imagecreatetruecolor($width, $height);
  43. //copy源图片内容 copy新图片
  44. imagecopyresized($newimage, $image, 0,0, 0,0, $width, $height, $w, $h);
  45. $filename="upload/s_".$file;
  46. imagejpeg($newimage,$filename);
复制代码


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn