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(1)
Oct 09 PHP
Smarty+QUICKFORM小小演示
Feb 25 PHP
PHP 变量定义和变量替换的方法
Jul 30 PHP
PHP教程 基本语法
Oct 23 PHP
php下利用curl判断远程文件是否存在的实现代码
Oct 08 PHP
PHP 第二节 数据类型之转换
Apr 28 PHP
使用openssl实现rsa非对称加密算法示例
Jan 24 PHP
php视频拍照上传头像功能实现代码分享
Oct 08 PHP
php 实现进制相互转换
Apr 07 PHP
Laravel Eloquent ORM 实现查询表中指定的字段
Oct 17 PHP
PHP设计模式(一)工厂模式Factory实例详解【创建型】
May 02 PHP
你真的了解PHP中的引用符号(&)吗
May 12 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
asp和php下textarea提交大量数据发生丢失的解决方法
2008/01/20 PHP
YII Framework框架教程之缓存用法详解
2016/03/14 PHP
PHP判断FORM表单或URL参数来的数据是否为整数的方法
2016/03/25 PHP
Laravel 实现密码重置功能
2018/02/23 PHP
javascript实现动态CSS换肤技术的脚本
2007/06/29 Javascript
js 实现菜单上下显示附效果图
2013/11/21 Javascript
结合JQ1.9通过js正则判断各种浏览器版本的方法
2013/12/30 Javascript
jQuery实现的在线答题功能
2015/04/12 Javascript
JS上传组件FileUpload自定义模板的使用方法
2016/05/10 Javascript
基于jQuery ligerUI实现分页样式
2016/09/18 Javascript
完美解决浏览器跨域的几种方法(汇总)
2017/05/08 Javascript
vue-router实现tab标签页(单页面)详解
2017/10/17 Javascript
基于vue2.0动态组件及render详解
2018/03/17 Javascript
vue和better-scroll实现列表左右联动效果详解
2019/04/29 Javascript
vue实现绑定事件的方法实例代码详解
2019/06/20 Javascript
详解Vue中的MVVM原理和实现方法
2020/07/15 Javascript
js对象属性名驼峰式转下划线的实例代码
2020/09/17 Javascript
[43:35]EG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[01:10:58]KG vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Python functools模块学习总结
2015/05/09 Python
Python随机生成带特殊字符的密码
2016/03/02 Python
python中pandas.DataFrame排除特定行方法示例
2017/03/12 Python
Python利用公共键如何对字典列表进行排序详解
2018/05/19 Python
Numpy中的mask的使用
2018/07/21 Python
Python简直是万能的,这5大主要用途你一定要知道!(推荐)
2019/04/03 Python
基于Tensorflow批量数据的输入实现方式
2020/02/05 Python
python基于opencv 实现图像时钟
2021/01/04 Python
BabyBjörn婴儿背带法国官网:BabyBjorn法国
2018/06/16 全球购物
美国婴儿和儿童家具网上商店:ABaby.com
2018/07/02 全球购物
草莓网官网:StrawberryNET
2019/08/21 全球购物
戴尔荷兰官方网站:Dell荷兰
2020/10/04 全球购物
什么是聚集索引和非聚集索引
2012/01/17 面试题
银行员工职业规划范文
2014/01/21 职场文书
客户答谢会致辞
2015/01/20 职场文书
保密法制宣传月活动总结
2015/05/07 职场文书
开工典礼致辞
2015/07/29 职场文书