php限制上传文件类型并保存上传文件的方法


Posted in PHP onMarch 13, 2015

本文实例讲述了php限制上传文件类型并保存上传文件的方法。分享给大家供大家参考。具体如下:

下面的代码演示了php中如何获取用户上传的文件,并限制文件类型的一般图片文件,最后保存到服务器

<?php
$allowedExts = array("gif", "jpeg", "jpg", "png");
$extension = end(explode(".", $_FILES["file"]["name"]));
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 20000)
&& in_array($extension, $allowedExts))
 {
 if ($_FILES["file"]["error"] > 0)
  {
  echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
  }
 else
  {
  echo "Upload: " . $_FILES["file"]["name"] . "<br>";
  echo "Type: " . $_FILES["file"]["type"] . "<br>";
  echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
  echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
  if (file_exists("upload/" . $_FILES["file"]["name"]))
   {
   echo $_FILES["file"]["name"] . " already exists. ";
   }
  else
   {
   move_uploaded_file($_FILES["file"]["tmp_name"],
   "upload/" . $_FILES["file"]["name"]);
   echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
   }
  }
 }
else
 {
 echo "Invalid file";
 }
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
Apache2 httpd.conf 中文版
Dec 06 PHP
优化PHP代码的53条建议
Mar 27 PHP
PHP正确配置mysql(apache环境)
Aug 28 PHP
php输出xml格式字符串(用的这个)
Jul 12 PHP
解析PHP将对象转换成数组的方法(兼容多维数组类型)
Jun 21 PHP
destoon实现资讯信息前面调用它所属分类的方法
Jul 15 PHP
php防止恶意刷新与刷票的方法
Nov 21 PHP
php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手)
Jun 03 PHP
实例讲解php数据访问
May 09 PHP
PHP中使用foreach()遍历二维数组的简单实例
Jun 13 PHP
php 根据自增id创建唯一编号类
Apr 06 PHP
Smarty模板变量与调节器实例详解
Jul 20 PHP
php短网址和数字之间相互转换的方法
Mar 13 #PHP
PHP获取一段文本显示点阵宽度和高度的方法
Mar 12 #PHP
PHP实现自动对图片进行滚动显示的方法
Mar 12 #PHP
PHP使用ffmpeg给视频增加字幕显示的方法
Mar 12 #PHP
PHP从FLV文件获取视频预览图的方法
Mar 12 #PHP
PHP简单获取视频预览图的方法
Mar 12 #PHP
php使用memcoder将视频转成mp4格式的方法
Mar 12 #PHP
You might like
PHP 内存缓存加速功能memcached安装与用法
2009/09/03 PHP
实现PHP搜索加分页
2016/10/12 PHP
php面向对象重点知识分享
2019/09/27 PHP
始终在屏幕中间显示Div的代码(css+js)
2011/03/10 Javascript
如何阻止复制剪切和粘贴事件为了表单内容的安全
2013/05/23 Javascript
javascript使用smipleChart实现简单图表
2015/01/02 Javascript
js实现改进的仿蓝色论坛导航菜单效果代码
2015/09/06 Javascript
整理Javascript基础语法学习笔记
2015/11/29 Javascript
jQuery EasyUi实战教程之布局篇
2016/01/26 Javascript
Jquery和Js获得元素标签名称的方法总结
2016/10/08 Javascript
微信小程序 教程之WXSS
2016/10/18 Javascript
详解Js模板引擎(TrimPath)
2016/11/22 Javascript
AngularJS使用ng-inlude指令加载页面失败的原因与解决方法
2017/01/19 Javascript
JavaScript使用readAsDataURL读取图像文件
2017/05/10 Javascript
详解微信小程序框架wepy踩坑记录(与vue对比)
2019/03/12 Javascript
详解js创建对象的几种方法及继承
2019/04/12 Javascript
详解jQuery中的getAll()和cleanData()
2019/04/15 jQuery
跟老齐学Python之传说中的函数编写条规
2014/10/11 Python
pymongo实现控制mongodb中数字字段做加法的方法
2015/03/26 Python
深入理解python函数递归和生成器
2016/06/06 Python
Python Xml文件添加字节属性的方法
2018/03/31 Python
pyQt4实现俄罗斯方块游戏
2018/06/26 Python
Python实现合并两个有序链表的方法示例
2019/01/31 Python
python redis连接 有序集合去重的代码
2019/08/04 Python
Django异步任务线程池实现原理
2019/12/17 Python
使用opencv识别图像红色区域,并输出红色区域中心点坐标
2020/06/02 Python
基于python调用jenkins-cli实现快速发布
2020/08/14 Python
python爬虫智能翻页批量下载文件的实例详解
2021/02/02 Python
美国职棒大联盟官方网上商店:MLBShop.com
2017/11/12 全球购物
Baby Tulai澳大利亚:美国婴儿背带品牌
2018/10/15 全球购物
装修协议书范本
2014/04/21 职场文书
特教教师先进事迹
2014/05/21 职场文书
公司合作协议范文
2014/10/01 职场文书
2015年工程部工作总结
2015/04/30 职场文书
MySQL慢查询的坑
2021/04/28 MySQL
Vue3.0写自定义指令的简单步骤记录
2021/06/27 Vue.js