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木马攻击防御之道
Mar 24 PHP
php操作SVN版本服务器类代码
Nov 27 PHP
解析php中如何直接执行SHELL
Jun 28 PHP
两千行代码的PHP学习笔记汇总
Oct 05 PHP
php将字符串转换成16进制的方法
Mar 17 PHP
如何使用jQuery+PHP+MySQL来实现一个在线测试项目
Apr 26 PHP
使用phpexcel类实现excel导入mysql数据库功能(实例代码)
May 12 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
Aug 29 PHP
浅谈使用 Yii2 AssetBundle 中 $publishOptions 的正确姿势
Nov 08 PHP
Yii 访问 Gii(脚手架)时出现 403 错误
Jun 06 PHP
Laravel框架实现的上传图片到七牛功能详解
Sep 06 PHP
PHP实现考试倒计时功能代码
Apr 16 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
不用iconv库的gb2312与utf-8的互换函数
2006/10/09 PHP
使用ThinkPHP自带的Http类下载远程图片到本地的实现代码
2011/08/02 PHP
php全局变量和类配合使用深刻理解
2013/06/05 PHP
php中base64_decode与base64_encode加密解密函数实例
2014/11/24 PHP
Twig模板引擎用法入门教程
2016/01/20 PHP
PHP依赖注入(DI)和控制反转(IoC)详解
2017/06/12 PHP
总结PHP代码规范、流程规范、git规范
2018/06/18 PHP
JQuery 无废话系列教程(一) jquery入门 [推荐]
2009/06/23 Javascript
JavaScript 高效运行代码分析
2010/03/18 Javascript
使用jQuery Ajax功能时需要注意的一个问题(内存溢出)
2012/05/30 Javascript
JavaScript中定义函数的三种方法
2015/03/12 Javascript
JQ实现新浪游戏首页幻灯片
2015/07/29 Javascript
基于JavaScript的操作系统你听说过吗?
2016/01/28 Javascript
AngularJS在IE8的不支持的解决方法
2016/05/13 Javascript
非常实用的js验证框架实现源码 附原理方法
2016/06/08 Javascript
jquery ajaxfileupload异步上传插件使用详解
2017/02/08 Javascript
jQuery实现元素的插入
2017/02/27 Javascript
前端图片懒加载(lazyload)的实现方法(提高用户体验)
2017/08/21 Javascript
为什么我们要做三份 Webpack 配置文件
2017/09/18 Javascript
Vue.js项目中管理每个页面的头部标签的两种方法
2018/06/25 Javascript
Bootstrap-table使用footerFormatter做统计列功能
2018/09/07 Javascript
jQuery+PHP实现上传裁剪图片
2020/06/29 jQuery
vue实现搜索过滤效果
2019/05/28 Javascript
Python字符编码与函数的基本使用方法
2017/09/30 Python
python实现按长宽比缩放图片
2018/06/07 Python
Python连接SQLite数据库并进行增册改查操作方法详解
2020/02/18 Python
python内打印变量之%和f的实例
2020/02/19 Python
详解如何在css中引入自定义字体(font-face)
2018/05/17 HTML / CSS
压铸汽车模型收藏家:Diecastmodelswholesale.com
2016/12/21 全球购物
时尚、社区、科技:SEVENSTORE
2019/04/26 全球购物
美国Curacao百货连锁店网站:iCuracao.com
2019/07/20 全球购物
农民工讨薪标语
2014/06/26 职场文书
社区领导班子四风问题原因分析及整改措施
2014/09/28 职场文书
详解mysql三值逻辑与NULL
2021/05/19 MySQL
Spring Cloud Netflix 套件中的负载均衡组件 Ribbon
2022/04/13 Java/Android
Golang 遍历二叉树
2022/04/19 Golang