|
1.首先思考一个问题上传到数据库是上传的图片还是图片地址这里我们上传的是图片地址,因为图片或音频存数据库中过大,数据库会崩掉。
下面是封装的文件上传的方法:
$maxSize){
return [0,'传的文件超过最大限制'];
}
//判断文件的mime类型
if(!in_array($_FILES[$key]['type'],$allowMime)){
return [0,'不符合的mime类型'];
}
//判断文件的后缀
$info = pathinfo($_FILES[$key]['name']);
$sub = $info['extension'];
if(!in_array($sub,$allowType)){
return [0,'不符合的文件后缀'];
}
//判断是否是随机文件
if($ifFileName){
$name = uniqid().'.'.$sub;
}else{
$name = $info;
}
//拼接路径
$path = rtrim($path,'/').'/'.date('Y/m/d').'/';
//判断文件是否存在,不存在则创建
if(!file_exists($path)){
mkdir($path,0777,true);
}
//判断是否是上传文件
if(is_uploaded_file($_FILES[$key]['tmp_name'])){
if(move_uploaded_file($_FILES[$key]['tmp_name'],$path.$name)){
echo '文件上传成功';
return [1,$path.$name];
}else{
return[0,'上传文件失败'];
}
}else{
return [0,'文件不存在'];
}
}
|
|