zoukankan      html  css  js  c++  java
  • php上传图片后,如果图片大于50kb则进行压缩

    if($size > 51200){
      //压缩图片
      $uploadfile = $imgDir.$filename;

      //图片路径
      $uploaddir_resize = 'account_imgs/';
      $uploadfile_resize = $uploaddir_resize.$filename;
      //echo $uploaddir_resize;
      function resizeImage($uploadfile,$maxwidth,$maxheight,$filename)
      {
        //取得当前图片大小
        $width = imagesx($uploadfile);
        $height = imagesy($uploadfile);

        //压缩比值

        $i=0.5;
        //生成缩略图的大小
        if(($width > $maxwidth) || ($height > $maxheight))
        {
        /*
          $widthratio = $maxwidth/$width;
          $heightratio = $maxheight/$height;

          if($widthratio < $heightratio)
          {
            $ratio = $widthratio;
          }
          else
          {
            $ratio = $heightratio;
          }

          $newwidth = $width * $ratio;
          $newheight = $height * $ratio;
          */
          $newwidth = $width * $i;
          $newheight = $height * $i;
          if(function_exists("imagecopyresampled"))
          {
            $uploaddir_resize = imagecreatetruecolor($newwidth, $newheight);
            //echo $uploaddir_resize;
            imagecopyresampled($uploaddir_resize, $uploadfile, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
          }
          else
          {
            $uploaddir_resize = imagecreate($newwidth, $newheight);
            imagecopyresized($uploaddir_resize, $uploadfile, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
          }

          ImageJpeg ($uploaddir_resize,$filename);
          ImageDestroy ($uploaddir_resize);
        }
        else
        {
          ImageJpeg ($uploadfile,$filename);
        }
      }
      $pic_width_max = 120;
      $pic_height_max = 90;
      $file_type = $_FILES["file"]['type'];
      if($_FILES["file"]['size']){
        if($file_type == "image/pjpeg"||$file_type == "image/jpg"|$file_type == "image/jpeg")
        {
          //$im = imagecreatefromjpeg($_FILES['file']['tmp_name']);
          $im = imagecreatefromjpeg($uploadfile);
        }
        else if($file_type == "image/x-png")
        {
          //$im = imagecreatefrompng($_FILES['file']['tmp_name']);
          $im = imagecreatefromjpeg($uploadfile);
        }
        else if($file_type == "image/gif")
        {
          //$im = imagecreatefromgif($_FILES['file']['tmp_name']);
          $im = imagecreatefromjpeg($uploadfile);
        }
        else//默认jpg
        {
          $im = imagecreatefromjpeg($uploadfile);
        }

        if($im)
        {
          ResizeImage($im,$pic_width_max,$pic_height_max,$uploadfile_resize);
          ImageDestroy ($im);
        }
      }
    }

  • 相关阅读:
    最容易懂的红黑树
    Chapter 9 (排序)
    【WC2013】糖果公园
    【Luogu1903】数颜色
    【笔记】Sigmoid函数
    【笔记】费马小定理、数论欧拉定理
    【笔记】单层感知机
    2020ICPC.小米 网络选拔赛第一场
    【Luogu3366】模板:最小生成树
    Codeforces Raif Round 1
  • 原文地址:https://www.cnblogs.com/nullman/p/6293242.html
Copyright © 2011-2022 走看看