thinkphp上传图片自动压缩问题

thinkphp上传图片后由于图片较大需要剪切,但是由于大部分浏览器阻挡剪切弹出窗口造成无法剪切

故使用thinkphp的生成缩略图的功能,上传的同时直接生成缩略图并覆盖原图,这样就可以自定义上传图片的大小(备注,生成缩略图是按原比例缩放的)

代码如下

public function upload($action){
	    $upload = new \Think\Upload();
		$upload->maxSize = 2097172;
		$upload->exts = array(‘jpg‘,‘gif‘,‘png‘,‘jpeg‘);
		$upload->savePath = ‘/Public/Uploads/‘;
		$info = $upload->upload();
		foreach($info as $file){
		    $name = $file[‘savepath‘].$file[‘savename‘];
		     }
	    $this->assign(‘action‘,$action);
	    $this->assign(‘name‘,$name);
	    if(!$info){
		   $this->error($upload->getError());
		}else{

			//生成缩略图
			$image = new \Think\Image();
			$image->open("./Uploads{$name}");
                        // 按照原图的比例生成一个最大为150*150的缩略图并保存为thumb.jpg
                        $image->thumb(800, 800)->save("./Uploads{$name}");//直接把缩略图覆盖原图
			$this->display(‘image‘);
			} 
	}
时间: 2024-10-04 10:33:22

thinkphp上传图片自动压缩问题的相关文章

kindeditor上传图片自动压缩过大的图片

kindeditor上传图片时自动将过大(像素以及图片长宽)的图片进行压缩,只需要在kindeditor中upload_json.ashx里面修改! <%@ webhandler Language="C#" class="Upload" %> /** * KindEditor ASP.NET * * 本ASP.NET程序是演示程序,建议不要直接在实际项目中使用. * 如果您确定直接使用本程序,使用之前请仔细确认相关安全设置. * */ using Sys

Google Pagespeed,自动压缩优化JS/CSS/Image

Google Pagespeed,自动压缩优化JS/CSS/Image 浏览:257 发布日期:2015/07/05 分类:技术分享 关键字: Nginx Appache Pagespeed 自动压缩优化JS/CSS/Image 这个周末,把服务器的Nginx升级了下,并加入了Google Pagespeed模块 效果很明显: 页面加载的多个JS.CSS会自动合并压缩处理 发现新版本的Pagespeed能很好的发现处理用户加载的第三方JS库,如jQuery 发现新版本的lazyload_imag

自动压缩备份数据库文件至指定服务器

公司用的数据库服务器每天都要备份,之前都是手动压缩,再拷贝一份至另一台存储. 闲来无事就决定用个脚本可以自动备份和复制 网上有很多资料,百度一下就有了 环境介绍 数据库备份文件存放在D:\beife\下 有一台同网段的服务器作为存放压缩文件备份 2. 压缩文档 先安装Winrar软件,并确定路径,稍后需要在系统环境变量里配置 我先将存储服务器的某个网络共享文件夹映射为网盘L,然后新建txt文件,输入使用以下命令 rar a -df -agYYYY-MM-DD  L:\  D:\oracle\bf

bat脚本:自动压缩n天前的文件【转载】

原文如下: bat脚本:自动压缩n天前的文件-中原小伙-ChinaUnix博客http://blog.chinaunix.net/uid-24946452-id-1651762.html 磁盘空间有限,又不能删除,只能定期对旧文件进行压缩以尽量节省空间.在windows2003上做这件事情比较简单,在之前的平台上就麻烦些.主要是查找n天前的文件的实现有区别.在2003及以后的windows系统版本,都有一个forfiles的命令来查找文件,之前的只能通过bat命令来实现这个功能了.这两种方法的详

关于webStrom-11.1配置less且自动生成.css和自动压缩为.min.css/.min.js

网上看过很多配置思路,自己总结了以下, 就把我个人配置的顺序以及材料分享下,webstrom以下简称WB 1.配置less需要安装nodejs,自行安装.因为要用到npm.我是直接把npm解压到C盘根目录的,先下载解压好待用 npm解压包百度云下载地址:http://pan.baidu.com/s/1bpdnmGZ (yuicompressor-2.4.2.jar 这个是WB配置让CSS或者JS自动生成.mincss/.minjs的压缩工具,不是配置LESS的工具哦, 使用很简单不用解压,比我直

静态资源文件自动压缩并替换成压缩版本(大型网站优化技术)

原文:静态资源文件自动压缩并替换成压缩版本(大型网站优化技术) 这一次,我总结和分享一项大型网站优化技术,那就是在项目中自动压缩静态资源文件(css.js),并让网站自动加载压缩后的资源文件.当然,这项技术在雅虎35条前端优化建议里也有记载,但它那只是给出一个理论的方案而已,并且采用的是外部压缩工具去压缩,而在我的项目中,是直接通过自己的程序自动化去压缩所有css.js文件,然后让页面直接加载所压缩后的资源,接下来直接进入主题. 本次实验使用的是PHP脚本语言,版本是PHP5.6,是在LINUX

SqlServer自动备份、自动压缩、自动删除旧备份

准备工具: SqlServer2008 WinRar 1.给SqlServer设置维护计划定时备份 这个操作比较简单,按向导新增维护计划即可. 2.自动压缩脚本 c:\Progra~2\WinRar\winRar.exe a D:\bak\database_buckup_%date:~0,4%_%date:~5,2%_%date:~8,2% d:\bak\database_*%date:~0,4%_%date:~5,2%_%date:~8,2%_*.bak 备份文件的格式是:database_b

自动压缩自动删除日志

示例为自动压缩前一天日志,自动删除90天之前的日志 自动压缩日志 #!/bin/bash #tar elong log #pengjunchao cd `dirname $0` to_day=`date +%Y-%m-%d` day2=`date +%Y-%m-%d --date='90 days ago'` for i in `ls | grep ^201.*[0-9]$|grep -v $to_day ` do     echo $i     tar -zcvf $i.tgz $i &&

使用Grunt进行前端模块自动压缩构建

目前正在参与开发的一个项目是采用AMD规范来组织每个模块的代码和其依赖性,每个模块包括其对应的html模板.css样式表以及Javascript文件.具体的目录结构如下图所示: 在项目发布之前,我们往往需要将项目文件比如JavaScript文件.CSS样式表等进行压缩混淆,这么做的目的主要在于减少加载文件的带宽,加快文件加载速度,同时也能在一定程度上保护源代码,提高安全性.Grunt是一个基于NodeJS的自动化构建工具,能够自动完成一些需要反复重复的任务,例如代码压缩混淆.编译.文件拷贝等.