thinkphp 上传文件学习

来源:互联网 发布:直播吃东西是什么软件 编辑:程序博客网 时间:2024/04/29 08:51

一、上传一个文件

1、在html网页代码

<form action="__URL__/upload" enctype="multipart/form-data" method="post">    <input type="text" name="name" />    <input type="file" name="photo" />    <input type="submit" value="提交"></form>

 

2、对应的PHP文件处理

public function upload() {// 实例化上传类    $upload = new \Think\Upload(); //上传的文件大小限制 (0-不做限制),单位是B    $upload->maxSize = 3145728; // 设置附件上传类型    $upload->exts = array('jpg', 'gif', 'png', 'jpeg');     // 设置附件上传根目录,$upload->rootPath = './Uploads/'; // 设置附件上传(子)目录    $upload->savePath  = './myupload/'; //自定义上传文件的命名规则    $upload->saveName =  time().'huangbiao';    // 上传文件$info   =   $upload->upload();dump($info).'<p>';if(!$info) {// 上传错误提示错误信息$this->error($upload->getError());}else{// 上传成功 获取上传文件信息foreach($info as $file){echo $file['savepath'].$file['savename'];}}} 

 

打印结果

dump($upload->upload())array(1) {  [0] => array(9) {    ["key"] => string(5) "photo"    ["name"] => string(27) "app_server_目录说明.png"    ["type"] => string(9) "image/png"    ["size"] => int(60793)    ["ext"] => string(3) "png"    ["md5"] => string(32) "e881f8306bc2c4259fe9da1207c03297"    ["sha1"] => string(40) "b32b3b81699bbe30982ec4760ccfa9fcd2d26b97"    ["savename"] => string(17) "568909120f1d2.png"    ["savepath"] => string(22) "./myupload/2016-01-03/"  }}

 

上传文件的目录说明

 

 

全局配置上传文件的方式,如果不满足要求,可以后面覆盖配置信息

$config = array(    'maxSize'    =>    3145728,    'rootPath'   =>    './Uploads/',    'savePath'   =>    '',    'saveName'   =>    array('uniqid',''),    'exts'       =>    array('jpg', 'gif', 'png', 'jpeg'),    'autoSub'    =>    true,    'subName'    =>    array('date','Ymd'),);$upload = new \Think\Upload($config);// 实例化上传类

 

二、上传多个文件

1、上传多个文件的HTML

<input type='file'  name='photo1'><input type='file'  name='photo2'><input type='file'  name='photo3'>或者<input type='file'  name='photo[]'><input type='file'  name='photo[]'><input type='file'  name='photo[]'>

 

2、上传单个文件的解决办法

public function upload(){// 实例化上传类    $upload = new \Think\Upload();// 设置附件上传大小    $upload->maxSize   =     3145728 ;// 设置附件上传类型    $upload->exts      =     array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传根目录    $upload->rootPath  =      './Uploads/';     // 上传单个文件     $info   =   $upload->uploadOne($_FILES['photo1']);    if(!$info) {// 上传错误提示错误信息        $this->error($upload->getError());    }else{// 上传成功 获取上传文件信息         echo $info['savepath'].$info['savename'];    }}

 

 

 

 

 

  • 大小: 21.5 KB
  • 大小: 10.3 KB
  • 查看图片附件
0 0
原创粉丝点击