yii2利用自带UploadedFile实现上传图片的示例


Posted in PHP onFebruary 16, 2017

本人搜索了很多关于yii2利用自带UploadedFile实现上传图片介绍,下面我来记录一下。

创建一个 models/UploadForm.php:

namespace app\models;

use yii\base\Model;
use yii\web\UploadedFile;

/**
* UploadForm is the model behind the upload form.
*/
class UploadForm extends Model
{
 /**
 * @var UploadedFile file attribute
 */
 public $file;

 /**
 * @return array the validation rules.
 */
 public function rules()
 {
  return [
   [['file'], ‘file'],
  ];
 }
}

视图文件

<?php
use yii\widgets\ActiveForm;
?>

<?php $form = ActiveForm::begin([‘options' => ['enctype' => 'multipart/form-data']]) ?>

<?= $form->field($model, ‘file')->fileInput() ?>

<button>Submit</button>

<?php ActiveForm::end() ?>

控制器

use app\models\UploadForm;
use yii\web\UploadedFile;



public function actionUpload()
{
 $model = new UploadForm();

 if (Yii::$app->request->isPost) {
  $model->file = UploadedFile::getInstance($model, ‘file');

  if ($model->file && $model->validate()) {
   $model->file->saveAs(‘uploads/' . $model->file->baseName . ‘.' . $model->file->extension);
  }
 }

 return $this->render(‘upload', ['model' => $model]);
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP文件下载类
Dec 06 PHP
Discuz 模板语句分析及知识技巧
Aug 21 PHP
php数组函数序列之array_search()- 按元素值返回键名
Nov 04 PHP
自己在做项目过程中学到的PHP知识收集
Aug 20 PHP
php生成扇形比例图实例
Nov 06 PHP
ThinkPHP中公共函数路径和配置项路径的映射分析
Nov 22 PHP
PHP计算当前坐标3公里内4个角落的最大最小经纬度实例
Feb 26 PHP
Yii2 GridView实现列表页直接修改数据的方法
May 16 PHP
php 伪造HTTP_REFERER页面URL来源的三种方法
Sep 22 PHP
Laravel 加载第三方类库的方法
Apr 20 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
Jun 13 PHP
Thinkphp5框架异常处理操作实例分析
Jun 03 PHP
php利用imagemagick实现复古老照片效果实例
Feb 16 #PHP
php UNIX时间戳用法详解
Feb 16 #PHP
php计算多个集合的笛卡尔积实例详解
Feb 16 #PHP
php实现文件与16进制相互转换的方法示例
Feb 16 #PHP
php根据用户名和手机号查询是否存在手机号码
Feb 16 #PHP
php使用PDO执行SQL语句的方法分析
Feb 16 #PHP
php四种定界符详解
Feb 16 #PHP
You might like
PHP如何得到当前页和上一页的地址?
2006/11/27 PHP
PHP中数组合并的两种方法及区别介绍
2012/09/14 PHP
浅析php过滤html字符串,防止SQL注入的方法
2013/07/02 PHP
php基于数组函数实现关联表的编辑操作示例
2017/07/04 PHP
改进UCHOME的记录发布,增强可访问性用户体验
2011/01/17 Javascript
jquery实现预览提交的表单代码分享
2014/05/21 Javascript
影响jQuery使用的14个方面
2014/09/01 Javascript
node.js中的fs.close方法使用说明
2014/12/17 Javascript
IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题
2015/08/21 Javascript
Node.js常用工具之util模块
2017/03/09 Javascript
JS实现批量上传文件并显示进度功能
2017/06/27 Javascript
Vue框架之goods组件开发详解
2018/01/25 Javascript
解决vue2中使用axios http请求出现的问题
2018/03/05 Javascript
ionic grid(栅格)九宫格制作详解
2018/06/30 Javascript
js JSON.stringify()基础详解
2019/06/19 Javascript
Node.js系列之连接DB的方法(3)
2019/08/30 Javascript
vue+elementUI实现简单日历功能
2020/09/24 Javascript
[33:39]DOTA2上海特级锦标赛C组小组赛#2 LGD VS Newbee第二局
2016/02/27 DOTA
[01:00:30]TFT vs VGJ.T Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
python中的全局变量用法分析
2015/06/09 Python
python实现三维拟合的方法
2018/12/29 Python
python多线程与多进程及其区别详解
2019/08/08 Python
Django项目创建到启动详解(最全最详细)
2019/09/07 Python
html5 canvas实现给图片添加平铺水印
2019/08/20 HTML / CSS
加拿大领先家居家具网上购物:Aosom.ca
2020/05/27 全球购物
违反学校规定检讨书
2014/01/18 职场文书
小学二年级评语
2014/04/21 职场文书
党委班子纠正“四风”问题整改措施
2014/10/28 职场文书
2014年学前班工作总结
2014/12/08 职场文书
同意报考证明
2015/06/17 职场文书
考研经验交流会策划书
2015/11/02 职场文书
2016年党员读书月活动总结
2016/04/06 职场文书
2019年度行政文员工作计划范本!
2019/07/04 职场文书
python tkinter模块的简单使用
2021/04/07 Python
alibaba seata服务端具体实现
2022/02/24 Java/Android
windows11选中自动复制怎么开启? Win11自动复制所选内容的方法
2022/07/23 数码科技