文章来源:http://blog.sina.com.cn/s/blog_88a65c1b0101izmn.html

下面小伙就带领大学学习一下 Yii2.0 的图片上传类的使用,还是老样子,如果代码样式混乱,我会附上截图供大家学习。
1、UserController.php 很重要的一步,那就是 use yii\web\UploadedFile;

public function actionUpload(){
$model = new User(); user 为用户表model;
if ($model->load(Yii::$app->request->post()) && $model->validate()) {
$upload = $this->uploadedFile($model, 'image');
$uploadpath = $this->fileExists('./images/' . date('Ymd') . '/'); 上传路径
if($model->save()){
$upload->saveAs($uploadpath . $upload->name);
}
}
}
public function uploadedFile($model, $item)
{
$upload = UploadedFile::getInstance($model, $item);
$model->image = $upload->name;
return $upload;
}
public function fileExists($uploadpath)
{
if(!file_exists($uploadpath)){
mkdir($uploadpath);
}
return $uploadpath;
}

上面只是简单的列出了使用方法,不够详细。在实际开发中需要自己去添加一些验证等等的......下面我简单的解释一下上面的代码。
1、首先我们要生成一个 数据model 的实例 这里我以user  模型做例子
2、然后我们调用 uploadedFile 类,把 UploadedFile类实例化一个对象,顺便把 数据模型里面的 image 参数进行填充数据,就是赋值。
3、调用 UploadedFile 类下面的 saveAs() 方法,将图片保存到你先要存放的目录下即可
4、在 Liunx 下开发过程中,也许会遇到权限问题,将目录权限进行设置即可。

yii2.0 图片上传(摘录)的更多相关文章

  1. yii2.0图片上传

    在根目录下夹uploads文件夹 控制器 UploadController.php <?php namespace frontend\controllers; use Yii; use fron ...

  2. ThinkPHP5.0图片上传生成缩略图实例代码

    很多朋友遇到这样一个问题,图片上传生成缩略图,很多人在本机(win)测试成功,上传到linux 服务器后错误. 我也遇到同样的问题.网上一查,有无数的人说是服务器临时文件目录权限问题. 几经思考后,发 ...

  3. yii2.0 文件上传

    Yii 2.0 出来好长时间了,一直都是看下官方网站,没实践过,今天弄了下图片上传操作. 1创建一个简单的数据表 mysql> desc article; +---------+-------- ...

  4. input type=file实现图片上传,预览以及图片删除

    背景 前两天在做一个PC网站的意见反馈,其中涉及到了图片上传功能,要求可以上传多张图片,并且支持图片上传预览及图片删除, 图片上传这一块以前没怎么搞过,而且一般也很少会碰到这样的需求,所以在做这个功能 ...

  5. 图片上传功能(EasyUI前台框架+SSM框架)

    文件上传步骤: * 1.采用文件正确的接收方式(修改3处配置文件/接口类型等) * 2.判断是否为一个图片,0表示无异常,1代表异常(jpg|gif|png) * 3.判断是不是一个“正经”的图片,判 ...

  6. yii2解决百度编辑器umeditor图片上传问题

    作者:白狼 出处:http://www.manks.top/article/yii2_umeditor_upload本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原 ...

  7. yii2框架原生的结合框架使用的图片上传

    首先我们要从model层开始写起,主要是为了创建验证规则,还有图片上传的路径以及图片的命名规则(UploadForm.php) 接下来我们要在控制器层写好业务逻辑,就是什么情况下直接在调用model层 ...

  8. html5 图片上传版本1.0

    1.代码如下: /* autor:shzihouyu date:2015-12-11 ver:1.0 */ var szyFile = { fileDom:null,//html 文件上传控件 pre ...

  9. thinkjs升级到3.0后的图片上传

    似乎当thinkjs升级到3.0后,才接手了一个项目.只是在实际运用过程中,还是发现了与2.2的些许差别——今天先分享关于图片上传的一些问题. 1.上传文件,我们选择了jQuery的插件:http:/ ...

随机推荐

  1. List的遍历和删除元素

    package test; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public c ...

  2. 如何使用新浪微博账户进行应用登录验证(基于Windows Azure Mobile Service 集成登录验证)

    使用三方账号登录应用应该对大家来说已经不是什么新鲜事儿了,但是今天为什么还要在这里跟大家聊这个话题呢,原因很简单 Windows Azure Mobiles Service Authenticatio ...

  3. 树莓派 LED+蜂鸣+声音传感器+红外模块组合打造声控/红外控制LED

    昨天搞了控制LED,玩了第一个,剩下的就感觉很简单了,这里记录一下 先来几张照片 玩了蜂蜜模块才发现规律,一般这种模块,都会有三个针脚,VCC(3.3V或5V供电输出针脚).GNC(对应GPIO针脚的 ...

  4. Codeforces Perfect Pair (JAVA)

    http://codeforces.com/problemset/problem/317/A 题意:给两个数字,可以两数相加去替换其中一个数字.问要做多少次,可以让两个数字钟至少一个 >= 目标 ...

  5. Ubuntu 12.10

    上海交通大学更新服务器(教育网千兆接入,联通/电信线路情况不详),包含其他开源镜像: deb http://ftp.sjtu.edu.cn/ubuntu/ quantal main multivers ...

  6. Eclipse为Unity3d编写jar组件

    Unity3d和Android的交互有两种方式: (1)使用Eclipse为Unity3d编写库,也就是jar包,然后导入到U3D中使用: (2)将Unity3d项目导出为Android项目,然后直接 ...

  7. Windows7 x64 系统下安装 Nodejs 并在 WebStorm 9.0.1 下搭建编译 LESS 环境

    1. 打开Nodejs官网http://www.nodejs.org/,点“DOWNLOADS”,点64-bit下载“node-v0.10.33-x64.msi”. 2. 下载好后,双击“node-v ...

  8. Robot Framework自动化测试(三)---Selenium API

    Robot  Framework  Selenium  API 说明: 此文档只是将最常用的UI 操作列出.更多方法请查找selenium 关键字库. 一.浏览器驱动 通过不同的浏览器执行脚本. Op ...

  9. Storm集群部署

    一. 说明 Storm是一个分布式实时计算系统,Storm对于实时计算的意义就相当于Hadoop对于批量计算的意义.对于实时性较高的系统Storm是不错的选择.Hadoop提供了map, reduce ...

  10. php中mysql操作的buffer知识

    php与mysql的连接有三种方式,mysql,mysqli,pdo.不管使用哪种方式进行连接,都有使用buffer和不使用buffer的区别. 什么叫使用buffer和不使用buffer呢? 客户端 ...