boaPHP开发手册v5.5

upload类
版本 1.0+
命名空间 boa
文件 boa/upload.php
说明 上传类,继承base类,配置:'UPLOAD' => [],
配置
配置项 默认值 类型 说明
strict false bool 严格模式,开启后将验证文件的MIME类型
size 2 float 允许的文件大小(MB),0=不限
exts jpg,png,gif string 允许的文件后缀
path BS_WWW .'file/' string 文件存放根目录
name null mixed 自定义文件保存名称(不含后缀,可以包含目录),支持单个(string)或多个(array)
ext null mixed 自定义文件保存后缀,不设定则自动使用原来文件后缀,支持单个(string)或多个(array),与name对应,单个的话所有文件均使用该后缀
default Y/m/d/Hisv string 没有自定义的情况下按此格式自动生成文件名称,date_format()函数支持的格式
break false bool 同时上传多个文件时,遇到失败是否终止,默认继续
auto false bool 上传图片时是否自动转换图片格式,默认否
目录
方法 说明
__construct() 初始化
cfg() 获取或设置配置信息
get_file() 上传后获取单个上传结果
get_files() 上传后获取全部上传结果,常用于more()上传
base64() base64方式上传,常用于javascript中上传文件
one() 单文件上传
more() 多文件上传
方法

__construct()

说明
初始化
参数 必须 默认值 类型 说明
$cfg [] array 配置数据
示例
$up = boa::upload();

cfg()

说明
获取或设置配置信息
参数 必须 默认值 类型 说明
$k null string
$v null string
返回值
同 base 类
示例
$up->cfg('size', 1.23); // 设置上传最大1.23M

get_file()

说明
上传后获取单个上传结果
参数 必须 默认值 类型 说明
$i 0 int 文件索引,同时上传多个文件的话,可以指定第i个文件
返回值
返回文件信息(array),数组包含三项:size, type, file(成功时)或 error(失败时)
示例
$res = $up->get_file();

get_files()

说明
上传后获取全部上传结果,常用于more()上传
返回值
返回文件信息(array),同get_file(),但包含多个文件(二维数组)

base64()

说明
base64方式上传,常用于javascript中上传文件
参数 必须 默认值 类型 说明
$field Y string 表单文件字段
$name null string 自定义保存名称,同配置name项
$ext null string 自定义保存后缀,同配置ext项
返回值
成功返回true(bool),失败返回false(bool)
示例
$res = $up->base64('file', 'dir/1', 'gif');

one()

说明
单文件上传
参数 必须 默认值 类型 说明
$field Y string 表单文件字段
$name null string 自定义保存名称,同配置name项
$ext null string 自定义保存后缀,同配置ext项
返回值
成功返回true(bool),失败返回false(bool)
示例
$res = $up->one('file'); // 表单字段为:file
$file = $up->get_file();
if($res){
	echo $file['file'];
}else{
	echo $file['error'];
}

more()

说明
多文件上传
参数 必须 默认值 类型 说明
$field Y string 表单文件字段
$name [] array 自定义保存名称,同配置name项
$ext null array 自定义保存后缀,同配置ext项
返回值
成功返回true(bool),失败返回false(bool),其中有一个文件失败即为 false
示例
$up->more('file', [...], 'png'); // 表单字段为:file[]
print_r($up->get_files());