PHP入门教程之上传文件实例分享
php
入门教程
分享
这篇文章主要介绍了PHP入门教程之上传文件的方法,结合实例形式详细分析了php上传文件的步骤与相关实现技巧,需要的朋友可以参考下
Demo1.php
<form enctype="multipart/form-data" action="Demo2.php" method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="2000000" /> 上传文件: <input type="file" name="userfile" /> <input type="submit" value="上传" /> </form>
登录后复制
Demo2.php
<?php //接受上传文件 //$_FILES; //存在,但是空值 //[userfile][name] 表示上传的文件名 //[userfile][type] 表示文件类型:例如,jpg 的文件类型为:image/jpeg //[userfile][tmp_name]表示上传的文件临时存放的位置 C:\WINDOWS\temp\php28.tmp //[userfile][error]表示错误类型,表示没有任何错误。 //[userfile][size]表示上传文件的大小 print_r($_FILES); echo '<br/>'; //is_uploaded_file -- 判断文件是否是通过 HTTP POST 上传的 //通过 HTTP POST 上传后,文件会存放在临时文件夹下 $fileMimes = array('image/jpeg','image/pjpeg','image/gif','image/png','image/x-png'); //判断类型是否是数组里的一种 if(is_array($fileMimes)){ if(!in_array($_FILES['userfile']['type'],$fileMimes)){ echo "<script>alert('本站只允许 jpg,png,gif 图片');history.back();</script>"; exit; } } //创建一个常量 define('URL',dirname(__FILE__).'\uploads'); echo URL; //判断目录是否存在 if(!is_dir(URL)){ mkdir(URL,0777); //最大权限0777,意思是如果没有这个目录,那么就创建 } define('MAX_SIZE',2000000); if($_FILES['userfile']['size'] > MAX_SIZE){ echo "<script>alert('上传不得超过 2 M');history.back();</script>"; exit; } //还有两个问题要验证 //第二个问题,只允许 JPG 文件 // if($_FILES['userfile']['type'] != 'image/jpeg' && $_FILES['userfile']['type'] != 'image/pjpeg'){ // echo "<script>alert('本站只允许 JPG 图片');history.back();</script>"; // exit ; // } // switch ($_FILES['userfile']['type']){ // case 'image/jpeg'://火狐 // break; // case 'image/pjpeg': // break; // case 'image/gif': // break; // case 'image/png'://火狐 // break; // case 'image/x-png'://IE // break; // default: echo "<script>alert('本站只允许 jpg,png,gif 图片');history.back();</script>"; // exit ; // } //第一个问题,如果上传错误,怎么办 if($_FILES['userfile']['error']>0){ switch ($_FILES['userfile']['error']){ case 1:echo "<script>alert('上传文件超过约定值1');history.back();</script>"; break; case 2:echo "<script>alert('上传文件超过约定值2');history.back();</script>"; break; case 3:echo "<script>alert('部分被上传');history.back();</script>"; break; case 4:echo "<script>alert('没有被上传');history.back();</script>"; break; } exit; } if(is_uploaded_file($_FILES['userfile']['tmp_name'])){ //就在这里移动了 //move_uploaded_file -- 将上传的文件移动到新位置 //第一个参数,写上临时文件的地址, //第二个参数,第二个参数要写上你要存在的地址 //先去判断这个目录是否存在 //如果想屏蔽掉警告,直接加上 @ if(!move_uploaded_file($_FILES['userfile']['tmp_name'],URL.'/'.$_FILES['userfile']['name'])){ //如果移动失败,就失败 echo '移动失败'; exit; } }else{ echo "<script>alert('临时文件夹找不到上传的文件');history.back();</script>"; exit; } //全部通过就上传成功了 //必须传一个值给Demo3.php //文件上传的地址 echo "<script>alert('文件上传成功');location.href='Demo3.php?url=".$_FILES['userfile']['name']."';</script>"; ?>
登录后复制
Demo3.php
<?php $url = $_GET['url']; echo "<img src=\"uploads/".$url."\"/>"; ?>
登录后复制
总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。
相关推荐:
以上是PHP入门教程之上传文件实例分享的详细内容。更多信息请关注PHP中文网其他相关文章!
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前
By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前
By 尊渡假赌尊渡假赌尊渡假赌
击败分裂小说需要多长时间?
3 周前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保护它?
3 周前
By DDD

热工具

记事本++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 拥有针对多种编程语言的大量扩展,可以轻松编写
