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 相关文章推荐
PHP+javascript模拟Matrix画面
Oct 09 PHP
php与XML、XSLT、Mysql的结合运用实现代码
Nov 19 PHP
浅析php中jsonp的跨域实例
Jun 21 PHP
使用php伪造referer的方法 利用referer防止图片盗链
Jan 20 PHP
php中把美国时间转为北京时间的自定义函数分享
Jul 28 PHP
浅谈PHP解析URL函数parse_url和parse_str
Nov 11 PHP
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
Dec 21 PHP
laravel 关联关系遍历数组的例子
Oct 10 PHP
laravel框架实现为 Blade 模板引擎添加新文件扩展名操作示例
Jan 25 PHP
Laravel 框架基于自带的用户系统实现登录注册及错误处理功能分析
Apr 14 PHP
PHP程序员必须知道的两种日志实例分析
May 14 PHP
PHP手机号码及邮箱正则表达式实例解析
Jul 11 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中mkdir函数用法实例分析
2014/11/15 PHP
php+jQuery+Ajax简单实现页面异步刷新
2016/08/08 PHP
php制作基于xml的RSS订阅源功能示例
2017/02/08 PHP
PHP实现的MD5结合RSA签名算法实例
2017/10/07 PHP
JavaScript 无符号右移运算符
2009/04/17 Javascript
关于jQuery新的事件绑定机制on()的使用技巧
2013/04/26 Javascript
js判断游览器类型及版本号的代码
2014/05/11 Javascript
node.js中的fs.symlinkSync方法使用说明
2014/12/15 Javascript
js倒计时简单实现方法
2015/12/17 Javascript
Bootstrap carousel轮转图的使用实例详解
2016/05/17 Javascript
深入解析桶排序算法及Node.js上JavaScript的代码实现
2016/07/06 Javascript
javascript动画之磁性吸附效果篇
2016/12/09 Javascript
Element Steps步骤条的使用方法
2020/07/26 Javascript
[48:48]VGJ.T vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
python中函数传参详解
2016/07/03 Python
python3 遍历删除特定后缀名文件的方法
2018/04/23 Python
python 一个figure上显示多个图像的实例
2019/07/08 Python
python django model联合主键的例子
2019/08/06 Python
python tornado使用流生成图片的例子
2019/11/18 Python
Python 使用type来定义类的实现
2019/11/19 Python
Python3将jpg转为pdf文件的方法示例
2019/12/13 Python
代码总结Python2 和 Python3 字符串的区别
2020/01/28 Python
Spartoo芬兰:欧洲最大的网上鞋店
2016/08/28 全球购物
美国知名的家庭连锁百货商店:Boscov’s
2017/07/27 全球购物
阿根廷旅游网站:almundo阿根廷
2018/02/12 全球购物
TUMI新加坡官网:国际领先的商旅箱包品牌
2019/01/12 全球购物
What's the difference between Debug and Trace class? (Debug类与Trace类有什么区别)
2013/09/10 面试题
Ajax的工作原理
2015/12/04 面试题
毕业生自荐信的主要内容
2013/10/29 职场文书
人事部主管岗位职责
2013/12/26 职场文书
大二学生学习个人自我评价
2014/01/19 职场文书
董事长秘书职责
2014/01/31 职场文书
查摆问题自我剖析材料
2014/08/18 职场文书
派出所班子党的群众路线对照检查材料思想汇报
2014/10/01 职场文书
求职意向书范本
2015/05/11 职场文书
高中家长意见怎么写
2015/06/03 职场文书