thinkphp5单图上传压缩

phpwsl  发布于 2018-08-21 16:53:18    102

    /**

     * 通用图片上传接口

     * @return \think\response\Json

     */

    public function upload()

    {

        $config = [

            'size' => 10000000,

            'ext'  => 'jpg,gif,png,bmp,jpeg,JPG'

        ];

 

        $file = $this->request->file('file');

 

        $upload_path = str_replace('\\', '/', ROOT_PATH . 'public/uploads');

        $save_path   = '/uploads/';

        $info        = $file->validate($config)->move($upload_path);

 

 

 

        $image = \think\Image::open(ROOT_PATH . 'public/'.$save_path . $info->getSaveName());

 

        // 按照原图的比例生成一个最大为600*600的缩略图替换原图

        $image->thumb(600, 600)->save(ROOT_PATH . 'public/'.$save_path . $info->getSaveName());

 

        if ($info) {

            $result = [

                'error' => 0,

                'url'   => str_replace('\\', '/', $save_path . $info->getSaveName())

            ];

        } else {

            $result = [

                'error'   => 1,

                'message' => $file->getError()

            ];

        }

 

        return json($result);

    }


转载至:谁想轻轻偷走我的吻