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 相关文章推荐
PHP4(windows版本)中的COM函数
Oct 09 PHP
php自动适应范围的分页代码
Aug 05 PHP
php foreach 使用&amp;(与运算符)引用赋值要注意的问题
Feb 16 PHP
PHP文件读写操作之文件写入代码
Jan 13 PHP
destoon复制新模块的方法
Jun 21 PHP
用PHP生成excel文件到指定目录
Jun 22 PHP
PHP模板引擎Smarty内置变量调解器用法详解
Apr 11 PHP
php时间函数用法分析
May 28 PHP
php 流程控制switch的简单实例
Jun 07 PHP
php中通过eval实现字符串格式的计算公式
Mar 18 PHP
利用PHPStorm如何开发Laravel应用详解
Aug 30 PHP
PHP堆栈调试操作简单示例
Jun 15 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
Content-type 的说明
2006/10/09 PHP
PHP的中问验证码
2006/11/25 PHP
实现在同一方法中获取当前方法中新赋值的session值解决方法
2014/06/26 PHP
PHP中大于2038年时间戳的问题处理方案
2015/03/03 PHP
PHP简单实现断点续传下载的方法
2015/09/25 PHP
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
2016/05/18 PHP
PHP 获取 ping 时间的实现方法
2017/09/29 PHP
Laravel 5.5基于内置的Auth模块实现前后台登陆详解
2017/12/21 PHP
PHP中的自动加载操作实现方法详解
2019/08/06 PHP
关于PhpStorm设置点击编辑文件自动定位源文件的实现方式
2020/12/30 PHP
非常强大的 jQuery.AsyncBox 弹出对话框插件
2011/08/29 Javascript
JavaScript中OnLoad几种使用方法
2012/12/15 Javascript
JS中的this变量的使用介绍
2013/10/21 Javascript
Jquery给基本控件的取值、赋值示例
2014/05/23 Javascript
JS逆序遍历实现代码
2014/12/02 Javascript
jQuery实现带滚动导航效果的全屏滚动相册实例
2015/06/19 Javascript
ECMAScript6快速入手攻略
2016/07/18 Javascript
JS实现兼容火狐及IE iframe onload属性的遮罩层隐藏及显示效果
2016/08/23 Javascript
Vue 父子组件、组件间通信
2017/03/08 Javascript
对vue2.0中.vue文件页面跳转之.$router.push的用法详解
2018/08/24 Javascript
JS中通过url动态获取图片大小的方法小结(两种方法)
2018/10/31 Javascript
解决Vue的项目使用Element ui 走马灯无法实现的问题
2020/08/03 Javascript
js操作两个json数组合并、去重,以及删除某一项元素
2020/09/22 Javascript
Python构造自定义方法来美化字典结构输出的示例
2016/06/16 Python
利用python模拟实现POST请求提交图片的方法
2017/07/25 Python
python 去除二维数组/二维列表中的重复行方法
2019/01/23 Python
Python使用Pickle模块进行数据保存和读取的讲解
2019/04/09 Python
日本航空官方网站:JAL
2019/06/19 全球购物
What's the difference between Debug and Trace class? (Debug类与Trace类有什么区别)
2013/09/10 面试题
销售助理岗位职责
2014/02/21 职场文书
职业生涯规划书前言
2014/04/15 职场文书
打架赔偿协议书范本
2014/10/26 职场文书
2014年话务员工作总结
2014/11/19 职场文书
村主任当选感言
2015/08/01 职场文书
大学军训口号大全
2015/12/24 职场文书
HTML基础-标签分类(闭合标签,空标签,块级元素,行内元素,行级块元素,可替换元素)
2021/03/31 HTML / CSS