php实现文件上传
来源:互联网 发布:eclipse不编译java 编辑:程序博客网 时间:2024/05/17 15:19
/**
* 自定义的文件上传功能函数
* @param array $fileinfo 包含有文件信息的数组 type、size、name、tmp_name、err
* @param array $allowExt 允许上传的文件的扩展名称
* @param $path 文件上传路径
* @return [type] [description]
*/
function upload_file($fileinfo,$allowExt,$path)
{
if ($fileinfo['error']==UPLOAD_ERR_OK) {
$ext=pathinfo($fileinfo['name'],PATHINFO_EXTENSION);
if (!in_array($ext,$allowExt)) {
exit('非法文件类型');
}
$fileinfo['name']=md5(uniqid()).".".$ext;
if (move_uploaded_file($fileinfo['tmp_name'],$path.$fileinfo['name'])){
return $path.$fileinfo['name'];
}
return false;
}
else
{
switch ($error) {
case 1:
exit("文件超过了PHP配置文件中upload_max_filzesize选项的值");
break;
case 2:
exit("超过表单MAX_FILE_SIZE限制的大小");
break;
case 3:
exit("文件部分被上传");
break;
case 4:
exit("没有选择上传文件");
break;
case 6:
exit("没有找到临时目录");
break;
case 7:
case 8:
exit("系统错误");
break;
default:
break;
}
return false;
}
}
* 自定义的文件上传功能函数
* @param array $fileinfo 包含有文件信息的数组 type、size、name、tmp_name、err
* @param array $allowExt 允许上传的文件的扩展名称
* @param $path 文件上传路径
* @return [type] [description]
*/
function upload_file($fileinfo,$allowExt,$path)
{
if ($fileinfo['error']==UPLOAD_ERR_OK) {
$ext=pathinfo($fileinfo['name'],PATHINFO_EXTENSION);
if (!in_array($ext,$allowExt)) {
exit('非法文件类型');
}
$fileinfo['name']=md5(uniqid()).".".$ext;
if (move_uploaded_file($fileinfo['tmp_name'],$path.$fileinfo['name'])){
return $path.$fileinfo['name'];
}
return false;
}
else
{
switch ($error) {
case 1:
exit("文件超过了PHP配置文件中upload_max_filzesize选项的值");
break;
case 2:
exit("超过表单MAX_FILE_SIZE限制的大小");
break;
case 3:
exit("文件部分被上传");
break;
case 4:
exit("没有选择上传文件");
break;
case 6:
exit("没有找到临时目录");
break;
case 7:
case 8:
exit("系统错误");
break;
default:
break;
}
return false;
}
}
0 0
- PHP实现文件上传
- 实现php文件上传
- PHP上传文件实现
- php实现文件上传
- [php] 实现文件上传
- PHP实现文件上传
- php实现文件上传
- PHP实现文件上传
- PHP-实现文件上传
- PHP 实现文件上传
- php实现文件上传
- PHP实现文件上传例子
- SIMPLE PHP -- 实现文件上传
- 用PHP实现文件上传
- PHP实现文件上传例子
- 用PHP实现文件上传
- FLASH+PHP实现文件上传
- php如何实现文件上传 ?
- Servlet的生命周期和web.xml
- 三层学习偶得之修改自己电脑的名称
- Eclipse 中 CVS show histoy 显示空白
- 【Android】Android自定义带board的圆角控件
- python2.x和python3.x中raw_input( )和input( )区别
- php实现文件上传
- java WEB 表单 验证码问题与解决
- new和malloc的区别&delete和free的区别
- iOS开发 -关于使用iOS沙盒路径遇到的问题
- Unix环境高级编程(阅读笔记)----中断的系统调用,自动重启动的函数
- mysql插入数据乱码
- iOS 获取手机的型号,系统版本,软件名称,软件版本
- 第五届山东省ACM Hearthstone II(Dp)
- Java之------单机版书店管理系统(设计思想和设计模式系列八)登录模块