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 相关文章推荐
对盗链说再见...
Oct 09 PHP
如何使用PHP中的字符串函数
Nov 24 PHP
PHP 递归效率分析
Nov 24 PHP
个人写的PHP验证码生成类分享
Aug 21 PHP
php设计模式之简单工厂模式详解
Sep 04 PHP
php基础设计模式大全(注册树模式、工厂模式、单列模式)
Aug 31 PHP
php检查页面是否被百度收录
Oct 28 PHP
php面向对象值单例模式
May 03 PHP
PHP实现添加购物车功能
Mar 06 PHP
简单实现php上传文件功能
Sep 21 PHP
laravel 字段格式化 modle 字段类型转换方法
Sep 30 PHP
PHP PDO和消息队列的个人理解与应用实例分析
Nov 25 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 getcwd与dirname(__FILE__)区别详解
2016/09/24 PHP
PHP后期静态绑定实例浅析
2018/12/21 PHP
打印json对象的内容及JSON.stringify函数应用
2013/03/29 Javascript
简易js代码实现计算器操作
2013/04/15 Javascript
将json当数据库一样操作的javascript lib
2013/10/28 Javascript
javascript 分号总结及详细介绍
2016/09/24 Javascript
原生js实现网易轮播图效果
2020/04/10 Javascript
AngularJS入门教程之MVC架构实例分析
2016/11/01 Javascript
AngularJS全局警告框实现方法示例
2017/05/18 Javascript
使用InstantClick.js让页面提前加载200ms
2017/09/12 Javascript
JS实现手写parseInt的方法示例
2017/09/24 Javascript
微信小程序自定义组件实现tabs选项卡功能
2018/07/14 Javascript
解决vue路由后界面没有变化,但是链接有的问题
2018/09/01 Javascript
Phaser.js实现简单的跑酷游戏附源码下载
2018/10/26 Javascript
react中Suspense的使用详解
2019/09/01 Javascript
bootstrap-table后端分页功能完整实例
2020/06/01 Javascript
js简单实现自动生成表格功能示例
2020/06/02 Javascript
vue 动态组件(component :is) 和 dom元素限制(is)用法说明
2020/09/04 Javascript
[42:48]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第二场 12.11
2020/12/16 DOTA
Python通过递归遍历出集合中所有元素的方法
2015/02/25 Python
python实现定时播放mp3
2015/03/29 Python
查看Python安装路径以及安装包路径小技巧
2015/04/28 Python
对Python 窗体(tkinter)文本编辑器(Text)详解
2018/10/11 Python
Django中使用 Closure Table 储存无限分级数据
2019/06/06 Python
Django中使用极验Geetest滑动验证码过程解析
2019/07/31 Python
Python对接 xray 和微信实现自动告警
2019/09/17 Python
wxPython实现列表增删改查功能
2019/11/19 Python
DAWGS鞋官方网站:鞋,凉鞋,靴子
2016/10/04 全球购物
美国顶级户外凉鞋品牌:Chacos
2017/03/27 全球购物
TripAdvisor瑞典:全球领先的旅游网站
2017/12/11 全球购物
领导调研接待方案
2014/02/27 职场文书
创建市级文明单位实施方案
2014/03/01 职场文书
2016元旦晚会主持词开场白和结束语
2015/12/04 职场文书
MySQL命令行操作时的编码问题详解
2021/04/14 MySQL
python模块与C和C++动态库相互调用实现过程示例
2021/11/02 Python
六个好看实用的 HTML + CSS 后台登录入口页面
2022/04/28 HTML / CSS