thinkphp3.2上传方法使用教程

来源:互联网 发布:淘宝做墙纸生意 编辑:程序博客网 时间:2024/04/29 04:55
<?php //名称空间 namespace Open\Controller; //加载控制器类 use Think\Controller; //加载上传类 use Think\Upload; class FileController extends Controller {    public function test_upload($ftype = 'image') {        //这里划分一下允许上传的文件类型,与3.1相比,文件类型不再是数组类型了,而是字符串,这是个区别。        if ($ftype == 'image') {            $ftype = 'jpg,gif,png,jpeg,bmp';        } else if ($ftype == 'file') {            $ftype = 'zip,rar,doc,xls,ppt';        }        $setting = array(            'mimes' => '', //允许上传的文件MiMe类型            'maxSize' => 6 * 1024 * 1024, //上传的文件大小限制 (0-不做限制)            'exts' => $ftype, //允许上传的文件后缀            'autoSub' => true, //自动子目录保存文件            'subName' => array('date', 'Y-m-d'), //子目录创建方式,[0]-函数名,[1]-参数,多个参数使用数组            'rootPath' => './Uploads/', //保存根路径            'savePath' => '', //保存路径        );        /* 调用文件上传组件上传文件 */        //实例化上传类,传入上面的配置数组        $this->uploader = new Upload($setting, 'Local');        $info = $this->uploader->upload($_FILES);        //这里判断是否上传成功        if ($info) {            //// 上传成功 获取上传文件信息            foreach ($info as &$file) {                //拼接出上传目录                $file['rootpath'] = __ROOT__ . ltrim($setting['rootPath'], ".");                //拼接出文件相对路径                $file['filepath'] = $file['rootpath'] . $file['savepath'] . $file['savename'];            }            //这里可以输出一下结果,相对路径的键名是$info['upload']['filepath']            dump($info['upload']);            exit();        } else {            //输出错误信息            exit($this->uploader->getError());        }    } }


0 0
原创粉丝点击