您的位置:首页 > 编程语言

一个简单文件上传代码

2013-03-29 22:13 429 查看
private function _upload($file, $type_id = 1) {
$type_exts = array(
1 => array(
'gif',
'jpg',
'jpeg',
'png',
'bmp'
)
);
$max_size = 31457280;
if (!empty($file['error'])) {

switch ($file['error']) {
case '1':
$error = '超过php.ini允许的大小。';
break;

case '2':
$error = '超过表单允许的大小。';
break;

case '3':
$error = '图片只有部分被上传。';
break;

case '4':
$error = '请选择图片。';
break;

case '6':
$error = '找不到临时目录。';
break;

case '7':
$error = '写文件到硬盘出错。';
break;

case '8':
$error = 'File upload stopped by extension。';
break;

case '999':
default:
$error = '未知错误。';
}

return array(
false,
$error,
null
);
}
if (empty($file) === false) {
$file_name = $file['name'];
$tmp_name = $file['tmp_name'];
$file_size = $file['size'];
if (!$file_name) {

return array(
false,
'请选择文件。',
null,
);
}
if (@is_uploaded_file($tmp_name) === false) {

return array(
false,
'上传失败。',
null,
);
}
if ($file_size > $max_size) {

return array(
false,
'上传文件大小超过限制。',
null
);
}
//获得文件扩展名
$_tmp = explode(".", $file_name);
$file_ext = array_pop($_tmp);
$file_ext = strtolower($file_ext);
//检查扩展名
if (!isset($type_exts[$type_id]) || in_array($file_ext, $type_exts[$type_id]) === false) {
return array(
false,
"上传文件扩展名是不允许的扩展名。\n只允许" . implode(",", $type_exts[$type_id]) . "格式。",
null
);
}
//新文件名
$filename = APP . 'tmp/tmpLogo.' .$file_ext;
if (move_uploaded_file($tmp_name,$filename)) {
return array(
true,
null,
$filename
);
}else{
return array(
false,
'上传失败。',
null,
);
}
}
return array(
false,
"没有上传文件",
null
);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: