美文网首页
tp5文件上传

tp5文件上传

作者: Maiiiiiiiiiiiid | 来源:发表于2019-04-28 12:47 被阅读0次

tp5文件上传

[TOC]


一个文件的上传:

表单:

<h2>文件上传试例</h2>
<form action="{:url('up')}" method="post" class="form" enctype="multipart/form-data">
    选择文件:<input type="file" class="file" name="file" ><br/>
    <button type="submit" class="btn btn-primary">Submit</button>
</form>

up方法:

//获取上传的文件
$file = $request->file('file');
//上传文件验证
//根据验证规则提示错误信息
$result = $this->validate(['file' => $file],['file' => 'require|image:100,100,png'],['file.require' => '请上传文件','file.image' => '必须是100*100的PNG格式图片']);
if(true !== $result){
    $this->error($result);
}
//上传 命名的规则是按照日期 DS是系统分隔符(不同系统方向不一样)‘/’或者‘\’  这种是以date的方式重命名文件 将文件放在文件夹下
//        $info = $file->rule('date')->move(ROOT_PATH . 'public' . DS . 'upload');
//这种是以getInfo('type') . '_' . date("Y-m-d_H-i-s")重命名文件 都放在image文件夹下
$info = $file->rule(function ($file){
    return $file->getInfo('type') . '_' . date("Y-m-d_H-i-s");
})->move(ROOT_PATH . 'public' . DS . 'upload');

if($info){
    $this->success($info->getSaveName() . '文件上传成功:'. $info->getRealPath());
}else{
    $this->error($file->getError());
}

多个文件上传:

这种方式就是上面的代码循环,还存在一些小问

表单:

    <h2>文件上传试例</h2>
    <form action="{:url('up2')}" method="post" class="form" enctype="multipart/form-data">
        选择文件:<input type="file" class="file" name="img[]" ><br/>
        选择文件:<input type="file" class="file" name="img[]" ><br/>
        选择文件:<input type="file" class="file" name="img[]" ><br/>
        <button type="submit" class="btn btn-primary">Submit</button>
    </form>

up2方法:

$files = $request->file('img');
$item = [];
foreach ($files as $k=>$file){
    $result = $this->validate(['file' => $file],['file' => 'require|image'],['file.require' => '请上传文件','file.image' => '必须是100*100的PNG格式图片']);
    if(true !== $result){
        $this->error($result);
    }
    $info = $file->move(ROOT_PATH . 'public' . DS . 'upload');

    if($info){
        $item[] = $info->getRealPath();
    }else{
        $this->error($file->getError());
    }
}
$this->success('文件上传成功' . implode('<br/>',$item));

相关文章

  • tp5文件上传

    tp5文件上传 [TOC] 一个文件的上传: 表单: up方法: 多个文件上传: 这种方式就是上面的代码循环,还存...

  • TP5上传文件类

    2.form表单内 最重要的就是 这个属性 enctype="multipart/form-data"...

  • 文件上传(改良版)

      开发当中文件上传和下载是必不可少的两个常用接口,基于TP5的接口如下: 注意点:移动文件是需要绝对路径,访问文...

  • tp5获取上传文件信息

    上传文件move()方法中,ROOT_PATH 代表的是public上一级目录,跟域名配置没关系, 比如所有的项目...

  • tp5文件上传

  • Tp5上传文件到OSS

    第一步:下载sdk下载地址:https://github.com/aliyun/aliyun-oss-php-sd...

  • ThinkPhp框架使用(1)操作数据库

    下载tp5文件,将文件解压在php的www文件中 接下来了解一下tp5的组成: 开启服务器后,在网页输入:http...

  • tp5中nginx配置

    tp5中nginx配置 首先tp5的访问目录指向到webroot/public文件夹中。 thinkphp的url...

  • TP5上传

    说道上传,图片上传是最常见的了。比如商城的商品列表页,都有一堆商品提供大家看来让大家参考。有一些网站的新闻都会有缩...

  • PHP文件上传

    HTML文件上传表单 创建上传脚本 上传限制和保存上传文件 上传多个文件

网友评论

      本文标题:tp5文件上传

      本文链接:https://www.haomeiwen.com/subject/fljdnqtx.html