thinkphp上传图片自动压缩问题
thinkphp上传图片后由于图片较大需要剪切,但是由于大部分浏览器阻挡剪切弹出窗口造成无法剪切
故使用thinkphp的生成缩略图的功能,上传的同时直接生成缩略图并覆盖原图,这样就可以自定义上传图片的大小(备注,生成缩略图是按原比例缩放的)
代码如下
publicfunctionupload($action){$upload=new\Think\Upload();$upload->maxSize=2097172;$upload->exts=array('jpg','gif','png','jpeg');$upload->savePath='/Public/Uploads/';$info=$upload->upload();foreach($infoas$file){$name=$file['savepath'].$file['savename'];}$this->assign('action',$action);$this->assign('name',$name);if(!$info){$this->error($upload->getError());}else{//生成缩略图$p_w_picpath=new\Think\Image();$p_w_picpath->open("./Uploads{$name}");//按照原图的比例生成一个最大为150*150的缩略图并保存为thumb.jpg$p_w_picpath->thumb(800,800)->save("./Uploads{$name}");//直接把缩略图覆盖原图$this->display('p_w_picpath');}}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。