首页 PHP后端 Yii文件上传
Yii文件上传
作者 : tanyi 来源 : 我的笔记 浏览 : 16 次 时间 : 2021-09-29 15:59:04
简述
Yii文件上传社区文档里面只有结合模型上传的方式,这种对于我不喜欢用模型(一张表对应一个模型)的人来说很烦,其实也可以脱离模型单独上传,但是UploadedFile类并没有验证方法,所以还需要自己写方法验证一下
static private function img_check($file,array $rules){
    if(empty($rules)) return '未设置验证规则';
    foreach($rules as $key=>$vo){
        switch ($key){
            case 'size':
                if($file->size>=$vo) return  '文件大小超过限制';break;
            case 'extension':
                if(!in_array($file->extension,$vo)) return  '文件格式不正确';break;
        }
    }
    return false;
}

/**
 * 上传文件
 * @param $field  文件域的字段名
 * @param array $rule 验证规则
 * @return array
 */
static function upload_file($field,$rule=[]){
    $upload=(new UploadedFile())::getInstanceByName($field);
    if(!empty($rule)){
        $check=self::img_check($upload,$rule);
        if($check) return self::show_data($check,1);
    }
    $path='upload/'.date('Ym').'/';
    if(!file_exists($path)) mkdir($path,0777,true);
    $src=$path.md5(time().rand(1000,9999)).'.'.$upload->extension;
    $r=$upload::getInstanceByName('pic')->saveAs($src);
    if($r) return self::show_data('上传成功',0,['src'=>'/'.$src]);
    return  self::show_data($upload->error,1);
}

控制器调用

$r=Help::upload_file('pic',['size'=>1024*1024*5,'extension'=>['jpeg','png','jpg']]);
return Help::json($r);


上一篇: TP5 DISTINCT 方法分页问题

下一篇: 没有了
版权声明:原创文章,转载时请注明原始出处,作者等相关信息。
本文连接:https://ntbk8.cn/index/d-145.html
留言
上传图片
评论列表

110 篇

文章总数

66360 次

浏览总数

96 条

评论总数

昵称 Telkobe
职业 PHP开发
家乡 四川南充
住址 暂居成都
QQ 946188985
文章搜索
热门文章
最新文章
新闻头条

1 最深水位及腰,三亚一村庄内涝 被困群众被成功转移

2 最具影响力!海淀融媒又双叒叕上榜啦!

3 厨房煤气泄漏,用打火机测试?这个口诀要记牢

4 济南诚基中心四期迎来改造,曾经无奈的居民“看到希望”

5 杨笠工作室声明:杨笠只是受邀参加某时尚媒体活动,与奔驰无任何商业合作

6 本想在网络找个兼职,结果被骗近八万

7 语文最需要共情,他把课讲到学生心坎上

8 80后女教师扎根乡村10年 逛街看电影成了“奢侈品”

9 上天入地、飞檐走壁……消防“蜘蛛侠”大片来袭!

10 奥运冠军乐靖宜、罗雪娟、焦刘洋沪上同框,她们要复出了?

11 这座县域隶属扬州,处于江苏中部地理位置优越,为何说发展不好?

12 瓦后Wahou属于什么档次?是奢侈品吗?

13 新洲最美教师24年如一日扎根乡村教育,走教一年多来奔波数百公里

14 网红直播喝农药身亡,这些“帮凶”该当何罪?

15 最新!牵动全网人心的这位杭州刑警又有好消息

16 德州一拉面馆搬迁,老板贷款退会员储值金!本人回应:已退15万元,退款还在继续

17 四旬男子不满父亲喊他吃饭,竟持刀将其砍伤,涉故意杀人罪被起诉

18 挥拍魔都, 2021 澳网中国业余挑战赛上海站精彩收官!

19 “液态——2021上海当代艺术展”展出,看艺术家如何诠释“液态”?

20 秀出未来可期的艺术新面貌,2021上海青年艺术博览会下月启幕

21 上海江南民歌大赛颁奖展演在青浦朱家角古镇举行

22 不颁一分钱的“上海好童书”颁出 张文宏主编《病菌简史》获特别奖

23 粤剧《白蛇传·情》昨晚在宛平剧院开演

24 福州一在建摩天轮垮塌

25 中国书坛新人新作展览在新洲面试考核

26 海南省少儿民歌文化季圆满落幕 小小“红心”唱响椰城

27 突发!福州一在建摩天轮疑似意外倒塌

28 老常“还钱”记

29 【践行重要训词精神】十元打底“炸金花”,11人聚众赌博被罚

30 天天315丨这两批次的被子抽检不合格 抵抗外力能力较差易破裂

历史上的今天

1 在113年前的今天,1908年10月19日 (农历九月廿五),日本政府封禁《民报》。

2 在101年前的今天,1920年10月19日 (农历九月初八),苏联英雄约翰·里德英年早逝。

3 在89年前的今天,1932年10月19日 (农历九月二十),右江根据地创建人之一韦拔群被暗害。

4 在86年前的今天,1935年10月19日 (农历九月廿二),中共中央和红一方面军到达陕北。

5 在85年前的今天,1936年10月19日 (农历九月初五),鲁迅在上海病逝。

6 在84年前的今天,1937年10月19日 (农历九月十六),英国物理学家卢瑟福逝世。

7 在78年前的今天,1943年10月19日 (农历九月廿一),《解放日报》发表《在延安文艺座谈会上的讲话》。

8 1949年10月19日 (农历八月廿八),中央人民政府组成。

9 1950年10月19日 (农历九月初九),抗美援朝,志愿军跨过鸭绿江赴朝鲜前线。

10 1956年10月19日 (农历九月十六),波兰政治家哥穆尔卡复出。

11 1965年10月19日 (农历九月廿五),中国尼泊尔正式直接通邮。

12 1978年10月19日 (农历九月十八),卡尔波夫击败克切诺依蝉联世界象棋冠军。

13 1986年10月19日 (农历九月十六),莫桑比克总统座机坠毁 萨莫拉不幸身亡。

14 1987年10月19日 (农历八月廿七),黑色星期一世界股市狂跌。

15 1989年10月19日 (农历九月二十),苏联最新式的航空母舰下水。

16 1995年10月19日 (农历闰八月廿五),北约秘书长克拉斯辞职。

17 1995年10月19日 (农历闰八月廿五),卢泰愚丑闻震惊韩国。

18 1996年10月19日 (农历九月初八),我国第一艘热气飞艇首飞成功。

19 1998年10月19日 (农历八月廿九),格鲁吉亚军人哗变。

20 1998年10月19日 (农历八月廿九),人类首次徒步穿越世界最大峡谷。

21 1998年10月19日 (农历八月廿九),微软公司迎战美国政府。

22 2001年10月19日 (农历九月初三),著名指挥家李德伦逝世。

23 2001年10月19日 (农历九月初三),江泽民与布什首次会晤。

24 2007年10月19日 (农历九月初九),欧盟通过《里斯本条约》 制宪危机有所化解。

25 2007年10月19日 (农历九月初九),全球气候变化举世关注 “巴厘岛路线图”艰难出台。

26 2007年10月19日 (农历九月初九),东盟签署《东盟宪章》 一体化进程加速推进。

27 2007年10月19日 (农历九月初九),多种因素交互作用 国际油价持续高位震荡。

28 2007年10月19日 (农历九月初九),中东和会在美举行 巴以和平进程艰难重启。

29 2010年10月19日 (农历九月十二),“国际制造创新节”首设“蔡伦奖”。

百度统计 站长统计

©2018-2021 www.ntbk8.cn. All rights reserved.  蜀ICP备18006425号

友情链接:  若岚博客  vipbic  快云vps  聚宝盆  飞之梦工作室  7分钟课堂  提交友链