laravel的封装函数路径=====app->libs->article->functions.php
1.删除文件夹
function dir_del($dir)
{
if (!is_dir($dir)) {
return NULL;
}
$handle = opendir($dir);
while (($file = readdir($handle)) !== false) {
if ($file != '.' && $file != '..') {
$fullpath = $dir . '/' . $file;
if (!is_dir($fullpath)) {
@unlink($fullpath);
} else {
dir_del($fullpath);
}
}
}
closedir($handle);
if (rmdir($dir)) {
return true;
} else {
return false;
}
}
2.文件上传的
/** * [file_upload 文件上传函数,支持单文件,多文件] * @param string $name input表单中的name * @param string $save_dir 文件保存路径,相对于当前目录 * @param array $allow_suffix 允许上传的文件后缀 * @return array array() { * ["status"]=> 全部上传成功为true,全部上传失败为false,部分成功为成功数量 * ["path"]=>array() {已成功的文件路径} * ["error"]=>array() {失败信息} * } */ function files_upload($name="photo",$save_dir="images",$allow_suffix=array('jpg','jpeg','gif','png'),$path_image) { //如果是单文件上传,改变数组结构 if(!is_array($_FILES[$name]['name'])){ $list = array(); foreach($_FILES[$name] as $k=>$v){ $list[$k] = array($v); } $_FILES[$name] = $list; } $response = array(); $response['status'] = array(); $response['path'] = array(); $response['error'] = array(); //拼接保存目录 //$save_dir = './'.trim(trim($save_dir,'.'),'/').'/'; //判断保存目录是否存在 if(!file_exists($save_dir)) { //不存在则创建 if(false==mkdir($save_dir,0777,true)) { $response['status'] = false; $response['error'][] = '文件保存路径错误,路径 "'.$save_dir.'" 创建失败'; } } $num = count($_FILES[$name]['tmp_name']); $success = 0; //循环处理上传 for($i=0;$i <$num;$i++) { //判断是不是post上传 if(!is_uploaded_file($_FILES[$name]['tmp_name'][$i])) { $response['error'][] = '非法上传,文件 "'.$_FILES[$name]['name'][$i].'" 不是post获得的'; continue; } //判断错误 if($_FILES[$name]['error'][$i]>0) { $response['error'][] = '文件 "'.$_FILES[$name]['name'][$i].'" 上传错误,error下标为 "'.$_FILES[$name]['error'][$i].'"'; continue; } //获取文件后缀 $suffix = ltrim(strrchr($_FILES[$name]['name'][$i],'.'),'.'); //判断后缀是否是允许上传的格式 if(!in_array($suffix,$allow_suffix)) { $response['error'][] = '文件 "'.$_FILES[$name]['name'][$i].'" 为不允许上传的文件类型'; continue; } //得到上传后文件名 $new_file_name =date('ymdHis',time()).'_'.uniqid().'.'.$suffix; //拼接完整路径 $new_path = $save_dir.$new_file_name; //上传文件 把tmp文件移动到保存目录中 if(!move_uploaded_file($_FILES[$name]['tmp_name'][$i],$new_path)) { $response['error'][] = '文件 "'.$_FILES[$name]['name'][$i].'" 从临时文件夹移动到保存目录时发送错误'; continue; } //返回由图片文件路径组成的数组 // $response['path'][] =$save_dir.$new_file_name; $response['path'][] =$path_image.$new_file_name; $success++; } if(0==$success){ $success = false; }elseif($success==$num){ $success = true; } $response['status'] = $success; return $response; }