thinkphp 是国内的php 大神写的框架,开源免费,开发简单,深受我们这些小白的喜爱。
本篇我的博客就为文件上传做一个简单的介绍
thinkphp 有内置的文件上传组件 你可以使用内置的文件上传处理
$upload = new \Think\Upload();// 实例化上传类
这句代码的意思是实例化 thinkphp 内置的文件上传处理组件,如果你理解了php 的命名空间的含义,那么也就明白new \Think\Upload(); 中Upload类的所在位置(如果你的业务有什么特殊需求,也可以对该类进行编辑,或是继承进行二次开发)。
示例材料截取自官方。
// 设置附件上传大小 限制上传文件的大小
$upload->maxSize = 3145728 ;
// 设置附件上传类型 限制上传文件的类型 这里限制为图片类型
$upload->exts = array('jpg', 'gif', 'png', 'jpeg');
// 设置附件上传根目录 上传的文件将保存在哪个主目录下面 注意:./Uploads 这个文件夹的定位是相对于index.php(也就是入口文件的位置,而不是基于映射处理类的位置)
$upload->rootPath = './Uploads/';
// 设置附件上传(子)目录 文件上传的保存路径(相对于根路径)
$upload->savePath = '';
// 上传文件
$info = $upload->upload();
if(!$info) {// 上传错误提示错误信息
$this->error($upload->getError());
}else{// 上传成功 获取上传文件信息
foreach($info as $file){
echo $file['savepath'].$file['savename'];
}
}
至此,一个简单的文件上传流程遍走完了。