php yii把pdf转成图片,yii实现图片上传及缩略图生成的方法
这篇文章主要介绍了yii实现图片上传及缩略图生成的方法,详细分析了图片的上传及缩略图的生成原理与实现方法,是非常实用的技巧,需要的朋友可以参考下
本文实例讲述了利用yii框架来实现图片上传功能并在上传成功之后自动生成缩略图的方法,分享给大家供大家参考。具体实现方法如下:
Action文件:
复制代码 代码如下:
/**
* TestController.php
* Created on: 2014-1-26 12:59:36 by Outsider
*/
class TestController extends CController {
/**
* 缩略图片生成
* @ path 图片路径
* @ width 图片宽度
* @ height 图片高度
*/
public function actionGetThumb($path, $w, $h) {
$file_name = md5($path . $w . $h);
if (file_exists('./temp/' . $file_name . '.jpg')) {
header('location:/temp/' . $file_name . '.jpg');
Yii::app()->end();
}
Yii::import("ext.EPhpThumb.EPhpThumb");
$thumb = new EPhpThumb();
$thumb->init();
$thumb->create('.' . $path)
->adaptiveResize($w, $h)
->save('./temp/' . $file_name . '.jpg')
->show();
}
/*
* 图片显示
*/
public function actionList() {
$attache = Attache::model();
$list = $attache->findAll();
$this->render('list', array('list' => $list));
die;
}
/**
* 文件上传
*/
public function actionIndex() {
$path = getcwd() . 'uploads';
$dir = DIRECTORY_SEPARATOR . date('Y') . DIRECTORY_SEPARATOR . date('m');
$dir = str_replace("\", "/", $dir);
$uploads_dir = str_replace("\", "/", $path . $dir);
if (!is_dir($uploads_dir) || !is_writeable($uploads_dir)) {
mkdir($uploads_dir, 0777, TRUE);
touch($uploads_dir . '/index.html');
}
$uploaded = false;
$model = new Upload();
if (isset($_POST['Upload'])) {
$model->attributes = $_POST['Upload'];
$file = CUploadedFile::getInstance($model, 'file');
$newName = substr(md5($file->extensionName . round((microtime(true) * 1000))), 0, 17) . '.' . $file->extensionName;
$file_name = $uploads_dir . '/' . $newName;
if ($model->validate()) {
$attache = new Attache();
$uploaded = $file->saveAs($file_name, TRUE);
$attache->name = $file->getName();
$attache->path = $dir . '/' . $newName;
$attache->create_time = time();
$attache->save();
}
}
$this->render('index', array(
'model' => $model,
'uploaded' => $uploaded,
'dir' => $uploads_dir,
));
}
}
Upload.php:
复制代码 代码如下:
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
php yii把pdf转成图片,yii实现图片上传及缩略图生成的方法相关推荐
- 为什么PDF转成Word后是图片,怎么才能修改?
众所周知,PDF文件是很难被直接修改,最多也就是局部性的修改,而且限制还颇多.因为我们通常会想到将PDF转成Word,再进行修改,现在有很多工具,确实也有很好的转换效果,如果PDF页面不是很复杂的话, ...
- pdfbox将多页pdf转成多张长图片
(pdfbox将pdf转成图片(jpg或者png) 首先需要说明的几点事情 功能由来 引入jar包 下面贴上代码 关于产生2种报错信息的说明 写在最后 首先需要说明的几点事情 本文是基于pdfbox2 ...
- 在windows平台下php使用imagick库把pdf转换成(合并)图片
在windows平台下php使用imagick库把pdf转换成(合并)图片 开发背景 上传的word文档需要转换成图片,在网上找了资料,主要是先转换成pdf: 1. 在windows下用com组件加上 ...
- 图片太大不能上传怎么办?
图片太大不能上传怎么办?不管你是上班族还是学生,这几乎是每个人都遇到过的问题,很多网站为了防止自己的服务器存储空间不那么快被占用完,都会对上传的图片大小进行限制,操作大小限制的图片是不能被上传成功的. ...
- CSDN 转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(已有图床)
前言 注意:本篇并非创建图床的问题 本人使用的图床是阿里云的 最近将本地的markdown文档上传到CSDN,所有的图片都会提示:源站可能有防盗链机制,建议将图片保存下来直接上传 但是直接把图片链接粘 ...
- 图片、音视频消息上传优化
图片.音视频消息上传优化 通常图片.音视频等多媒体消息相对于文本消息会大很多,因此,多媒体消息在网络传输.实时触达等方面相需要有更多的优化.本文就针对如何使图片.视频.语音等多媒体消息发送得又快又稳进 ...
- 图片预览与图片通过预留接口上传
提示:图片预览与图片通过预留接口上传的笔记 图片前端预览: 前提:通过input[type=file]让用户选择文件,通过事件对象.target.files拿到用户选择的"文件对象" ...
- Java中使用UUID给图片命名的文件上传方法
场景 照片上传时给重命名时使用UUID进行重命名. 实现 在实现方法上传的方法中调用工具类的地方 Map<String, Object> result = ImageUtil.getIns ...
- pdf上传及预览;file上传pdf文件及预览;vue上传pdf文件及预览;vue-pdf预览pdf文件
需求:上传pdf文件,并点击可以打开预览.使用input的file功能即可完成,预览只需要跳转到pdf的url地址即可.还可以配合vue-pdf直接预览,点击看这篇. 以下代码可直接复制使用!!!有效 ...
最新文章
- 实现JavaSrcipt页面的跳转
- 说说第二次配置Ubuntu14.04
- python基础版课件_python基础课件精编版.ppt
- const、volatile、mutable关键字
- 数字滤波器(二)--最小相位延时系统和全通系统
- 企业CIO都要知道的数据中台建设五步法,用友大神十二讲就搞定
- 常用数据分析的基本方法
- dvr服务器系统,DVR监控软件 V1.0
- CSS 幻术 | 抗锯齿
- 蓝牙AOA融合定位技术汇总
- 斯坦福大学java视频_iPhone应用开发视频教程-斯坦福大学公开课
- 在oracle中使用lpad函数生成唯一标识符ID
- 打印正六边形(C语言)
- MATLAB椎体怎么画,最适合小白的matlab教程系列,进阶,一
- JavaScript “佛祖保佑 永无bug”
- 简单的方法保存微信语音
- 【第98题】JAVA高级技术-网络编程17(简易聊天室12:实现客户端一对一聊天)
- 遇到不支持的 Oracle 数据类型 USERDEFINED。
- 游戏输入控制的五条黄金法则
- android 开发中遇到的错误 app:mergeDebugResources
热门文章
- 微信语音怎么转发给别人听_微信分付怎么邀请别人 微信分付如何才能被邀请开通...
- JS循环执行函数setInterval
- 十进制小数化为二进制小数的方法是什么_十进制转成二进制的两种方式
- 使用python开发网页游戏_不敢想!不敢想!我用Python自动玩转2048游戏
- 判断运营商_三大通信运营商步调一致,大流量互联网套餐陆续成绝版
- Linux设备树翻译计划
- 360剑灵洪门崛起服务器维护,剑灵洪门崛起————【维护】8月1日更新维护公告...
- winform定义数据源名称_winform ComboBox自定义数据源实现用户输入时出现与用户输入匹配的项...
- 【转】注册Azure AD 2.0 应用程序
- console对象的方法log、info、warn、error的区别及几个实用的方法