php怎么限制文件后缀上传
PHP图片文件上传类型限制扩展名限制大小限制与自动检测目录创建。
代码分为两部分:
一部分form表单:(推荐学习:PHP视频教程)
<!doctype html><br/><html><br/><head><br/><title>文件上传案例-file upload example</title><br/><meta http-equiv="content-type" contnet="text/html" charset="utf-8"/><br/></head><br/><body><br/><h1>文件上传支持图片.gif.png.jpg.jpeg限制200kb大小的文件</h1><br/><form method="POST" action="upload_file.php" enctype="multipart/form-data"><br/><lable for="file">File:</lable><br/><input name="file" type="file" id="file"/><br/><br/><input type="submit" value="上传文件"/><br/></form><br/></body><br/></html><br/>
二部分PHP后台上传验证程序:
<meta charset="utf-8"/><br/><?php<br/>$array=array("gif","png","jpg","jpeg");//赋值一个数组<br/>$tmp=explode(".",$_FILES['file']['name']);//用explode()函数把字符串打散成为数组。<br/>$extension=end($tmp);//用end获取数组最后一个元素<br/>if($_FILES['file']['error']>0){//判断提交上的文件是否为空或错误<br/> echo "文件未选择,或非法文件!错误:".$_FILES['file']['error'];<br/>}else{<br/> if((($_FILES['file']['type']=="image/gif")//判断提交上的文件的文件类型是否正确和文件扩展名是否正确,文件大小是否超2048kb。<br/> ||($_FILES['file']['type']=="image/png")<br/> ||($_FILES['file']['type']=="image/jpeg")<br/> ||($_FILES['file']['type']=="image/jpg")<br/> ||($_FILES['file']['type']=="image/pjpeg")<br/> ||($_FILES['file']['type']=="image/x-png"))<br/> &&($_FILES['file']['size']<204800)<br/> &&in_array($extension,$array)){<br/> echo "文件大小和文件扩展名验成功!<br/>";<br/> if(file_exists("upload/")){//用file_exists函数检测是否有upload目录,用if判断。<br/> if(file_exists("upload/".$_FILES['file']['name'])){//用file_exists函数检测是否在upload目录下有['name']文件。用if判断。<br/> echo "已存在该文件名!位置:upload/".$_FILES['file']['name'];<br/> }else{//显示各个信息,然后用move_upload_file函数把临时目录文件移动到upload目录。<br/> echo "上传完成,下面是信息:<br/>";<br/> echo "上传文件名:".$_FILES['file']['name']."<br/>";<br/> echo "上传类型:".$_FILES['file']['type']."<br/>";<br/> echo "上传文件大小:".$_FILES['file']['size']."<br/>";<br/> echo "上传文件临时缓存位置:".$_FILES['file']['tmp_name']."<br/>";<br/> move_uploaded_file($_FILES['file']['tmp_name'],"upload/".$_FILES['file']['name']);//这里我们用到两个参数,一是被移到的文件,二是移动到的目标位置。<br/> echo "储存服务器相对的位置为:/upload/".$_FILES['file']['name'];<br/> }<br/> }else{//没有目录的情况下,使用mkdir函数创建upload目录。<br/> echo "不存在upload目录,已自动创建upload/目录";<br/> mkdir("upload");<br/> }<br/> }else{<br/> echo "扩展名和文件大小不正确,扩展名支持gif,jpg,png,jpeg,文件大小支持200kb";<br/> }<br/> //echo "文件临时储存的位置:".$_FILES['file']['tmp_name'];//把文件获取到临时储存的位置里面,并打印出来;<br/> //move_uploaded_file($_FILES['file']['tmp_name'],"upload/".$_FILES['file']['name']);//把临时储存的文件移到upload目录下。<br/>}<br/>?><br/>
后台PHP程序经过四次if判断进行四次判断上传的文件:
第一次if判断上传的文件是否空提交或者是否有错误。
第二次if判断上传的文件类型是否正确,扩展名是否匹配,大小是否合理。
第三次if判断上传的文件,所属的目录是否存在,假设不存在,系统会自动用mkdir函数创建一个upload目录;
第四次if判断上传的文件是否已存在,假设存在会进行提示并停止上传。相反如果不存在会进行上传操作;
以上是php怎么限制文件后缀上传的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

CakePHP 是 PHP 的开源框架。它的目的是使应用程序的开发、部署和维护变得更加容易。 CakePHP 基于类似 MVC 的架构,功能强大且易于掌握。模型、视图和控制器 gu

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

CakePHP 是一个开源MVC 框架。它使开发、部署和维护应用程序变得更加容易。 CakePHP 有许多库可以减少大多数常见任务的过载。

本教程演示了如何使用PHP有效地处理XML文档。 XML(可扩展的标记语言)是一种用于人类可读性和机器解析的多功能文本标记语言。它通常用于数据存储
