PHP文件上传原理简单分析


Posted in PHP onMay 29, 2011

//表单上传只能使用multipart/form-data编码格式
$_FILES系统函数;
$_FILES['myFile']['name']文件名称
$_FILES['myFile']['type']文件的类型,服务端进行限制
image/**
image/x-png
application/x-zip-compressed
$_FILES['myFile']['size']上传文件大小
$_FILES['myFile']['tmp_name']上传服务后保存临时文件名
$_FILES['myFile']['error']错误代码;
0成功1超过php.ini大小2超过MAX_FILE_SIZE选项指定的值
3只有部分上传 5上传文件大小为0

move_uploaded_file(临时文件,目标位置和文件名);
上传后移动文件到目标位置的函数
is_uploaded_file(MIME);
判断上传MIME类型的文件函数

<form enctyoe="multipart/form-data" method="post" name="upload"> 
<input name="upfile" name="name"> 
</form> 
if(is_uploaded_file($_FILES['myFile']['tmp_name'])){ 
$upfile = $_FILES['upload']; 
$name = $upfile['name']; 
$type = $upfile['type']; 
$size = $upfile['size']; 
$tmp_name = $upfile['tmp_name']; 
$error = $upfile['error']; 
switch($type){ 
case 'image/pjpeg' : $ok=1; 
break 
} 
if($ok){ 
move_uploaded_file($tmp_name,'up/'.$name); 
}else{ 
echo "文件类型不允许"; 
} 
}
PHP 相关文章推荐
BBS(php &amp; mysql)完整版(七)
Oct 09 PHP
使用 eAccelerator加速PHP代码的目的
Mar 16 PHP
理解和运用PHP中的多态性[译]
Aug 02 PHP
PHP随机字符串生成代码(包括大小写字母)
Jun 24 PHP
php使用json_encode对变量json编码
Apr 07 PHP
php中array_unshift()修改数组key注意事项分析
May 16 PHP
PHP 搜索查询功能实现
Nov 29 PHP
利用php操作memcache缓存的基础方法示例
Aug 02 PHP
PHP fprintf()函数用法讲解
Feb 16 PHP
Laravel框架Request、Response及Session操作示例
May 06 PHP
PHP使用HTML5 FileApi实现Ajax上传文件功能示例
Jul 01 PHP
PHP开启目录引索+fancyindex漂亮目录浏览带搜索功能
Sep 23 PHP
php修改时间格式的代码
May 29 #PHP
PHP第一季视频教程(李炎恢+php100 不断更新)
May 29 #PHP
PHP获取文件绝对路径的代码(上一级目录)
May 29 #PHP
php学习之变量的使用
May 29 #PHP
php学习之数据类型之间的转换代码
May 29 #PHP
jQuery 源码分析笔记
May 25 #PHP
PHP显示今天、今月、上月、今年的起点/终点时间戳的代码
May 25 #PHP
You might like
解析PHP中的unset究竟会不会释放内存
2013/07/18 PHP
PHP 极验验证码实例讲解
2016/09/29 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
JS实现鼠标单击与双击事件共存
2014/03/08 Javascript
JavaScript验证图片类型(扩展名)的函数分享
2014/05/05 Javascript
nodejs npm install全局安装和本地安装的区别
2014/06/05 NodeJs
jquery验证邮箱格式并显示提交按钮
2015/11/07 Javascript
jquery.cookie实现的客户端购物车操作实例
2015/12/24 Javascript
jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)
2016/06/28 Javascript
jquery表单插件form使用方法详解
2017/01/20 Javascript
使用openSpeDiv方法实现Ecshop登录弹窗框效果
2017/03/13 Javascript
使用angular帮你实现拖拽的示例
2017/07/05 Javascript
浅谈pc端rem字体设置的问题
2017/08/03 Javascript
JS实现的简单下拉框联动功能示例
2018/05/11 Javascript
ajaxfileupload.js实现上传文件功能
2019/04/19 Javascript
JavaScript实现随机点名器实例详解
2019/05/07 Javascript
layUI实现三级导航菜单效果
2019/07/26 Javascript
Python连接MySQL并使用fetchall()方法过滤特殊字符
2016/03/13 Python
python分割列表(list)的方法示例
2017/05/07 Python
django 自定义过滤器的实现
2019/02/26 Python
python绘制评估优化算法性能的测试函数
2019/06/25 Python
python3.7 的新特性详解
2019/07/25 Python
使用pycharm在本地开发并实时同步到服务器
2019/08/02 Python
python numpy 常用随机数的产生方法的实现
2019/08/21 Python
作为网站管理者应当如何防范XSS
2014/08/16 面试题
劳动工资科岗位职责范本
2014/03/02 职场文书
警示教育活动总结
2014/05/05 职场文书
医药销售自我评价200字
2014/09/11 职场文书
机关作风建设剖析材料
2014/10/11 职场文书
因公司原因离职的辞职信范文
2015/05/12 职场文书
杨善洲观后感
2015/06/04 职场文书
唱歌比赛拉拉队口号
2015/12/25 职场文书
幼儿园2016圣诞节活动总结
2016/03/31 职场文书
争做文明公民倡议书
2019/06/24 职场文书
JavaWeb 入门:Hello Servlet
2021/07/16 Java/Android
JavaScript实现九宫格拖拽效果
2022/06/28 Javascript