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 相关文章推荐
Cannot modify header information错误解决方法
Oct 08 PHP
php 分页函数multi() discuz
Jun 21 PHP
PHP验证码类代码( 最新修改,完全定制化! )
Dec 02 PHP
php开启与关闭错误提示适用于没有修改php.ini的权限
Oct 16 PHP
php计算2个日期的差值函数分享
Feb 02 PHP
php实现QQ空间获取当前用户的用户名并生成图片
Jul 25 PHP
php文件上传类的分享
Jul 06 PHP
PHP环形链表实现方法示例
Sep 15 PHP
PHP实现基于栈的后缀表达式求值功能
Nov 10 PHP
php-fpm中max_children的配置
Mar 15 PHP
PHP实现创建一个RPC服务操作示例
Feb 23 PHP
php设计模式之组合模式实例详解【星际争霸游戏案例】
Mar 27 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利用反射实现插件机制的方法
2015/03/14 PHP
PHP实现的简单分页类及用法示例
2016/05/06 PHP
10款新鲜出炉的 jQuery 插件(Ajax 插件,有幻灯片、图片画廊、菜单等)
2011/06/08 Javascript
JQuery扩展插件Validate—4设置错误提示的样式
2011/09/05 Javascript
javascript中parentNode,childNodes,children的应用详解
2013/12/17 Javascript
js实现日期级联效果
2014/01/23 Javascript
使用jquery实现以post打开新窗口
2014/03/19 Javascript
javascript Array 数组常用方法
2015/04/05 Javascript
jQuery实现带有动画效果的回到顶部和底部代码
2015/11/04 Javascript
iframe中使用jquery进行查找的方法【案例分析】
2016/06/17 Javascript
js注入 黑客之路必备!
2016/09/14 Javascript
js继承实现方法详解
2016/12/16 Javascript
jQuery插件HighCharts实现的2D堆条状图效果示例【附demo源码下载】
2017/03/14 Javascript
jQuery表单验证之密码确认
2017/05/22 jQuery
Bootstrap模态框插入视频的实现代码
2017/06/25 Javascript
深入理解ES6的迭代器与生成器
2017/08/19 Javascript
vue.js中$set与数组更新方法
2018/03/08 Javascript
了解JavaScript中的选择器
2019/05/24 Javascript
浅谈v-for 和 v-if 并用时筛选条件方法
2019/11/07 Javascript
[57:22]完美世界DOTA2联赛PWL S2 FTD vs PXG 第二场 11.27
2020/12/01 DOTA
python删除文件示例分享
2014/01/28 Python
Django中使用locals()函数的技巧
2015/07/16 Python
Python的Flask框架及Nginx实现静态文件访问限制功能
2016/06/27 Python
python中print()函数的“,”与java中System.out.print()函数中的“+”功能详解
2017/11/24 Python
django站点管理详解
2017/12/12 Python
20行python代码的入门级小游戏的详解
2019/05/05 Python
Python程序包的构建和发布过程示例详解
2019/06/09 Python
python读文件的步骤
2019/10/08 Python
python数据库操作mysql:pymysql、sqlalchemy常见用法详解
2020/03/30 Python
python实现在内存中读写str和二进制数据代码
2020/04/24 Python
pandas DataFrame运算的实现
2020/06/14 Python
Linux常见面试题
2013/03/18 面试题
活动邀请函范文
2014/01/19 职场文书
化学教育专业求职信
2014/07/08 职场文书
应届本科毕业生求职信
2014/07/23 职场文书
简述python四种分词工具,盘点哪个更好用?
2021/04/13 Python