PHP文件上传入门案例

为了方便管理这些上传的文件,我们通常会将上传的文件保存到uploads目录下面

PHP文件上传入门案例

防止上传文件过大

思路:首先给定一个文件的最大限制,然后再拿上传的文件的大小 和 最大的限制进行比较,文件大小单位是字节,字节之间的转换:1024

1024字节 = 1KB

1024KB = 1MB

1024MB = 1GB

PHP文件上传入门案例

修改一下表单的提交地址:

PHP文件上传入门案例

确实阻止了文件的上传,但是还有一个小问题:

虽然上传时,拦截了,但是该文件还是在临时的文件夹中走了一圈,如何实现,如果文件过大的话,连临时目录都不让其进去

需要修改php的配置文件了,将其最大的限制修改为2MB,这样,让我们上传的文件大小超过2MB,就无法进入到临时目录

PHP文件上传入门案例

测试一把:

PHP文件上传入门案例

错误指的是提交的表单内容,超过了表单提交的最大限制,所以为了演示效果,我们临时将表单提交的最大限制修改为80MB

PHP文件上传入门案例

防止文件被覆盖

如果多个用户,同时上传文件,如果文件的名字固定死的话,所有用户上传的文件名字都会一样,将来就很麻烦了

思路:上传成功之后,给文件命名时,取一个唯一的、随机数

PHP文件上传入门案例

PHP文件上传入门案例

分目录存放上传的文件

为什么要分目录存储?

如果上传的文件不加任何修改,直接保存到uploads目录的话,uploads目录就会出现很多文件,不便于查找

PHP文件上传入门案例

通常我们会按照日期的格式分目录保存

PHP文件上传入门案例

PHP文件上传入门案例

控制上传的文件类型

假设有这样一个需求:上传用户的头像

这个时候我们只能上传图片(jpg、png、gif),所以我们就应该上传的时候做一个判断

思路:首先,定义一个数组保存支持的上传的文件的类型,然后再拿上传的文件的实际类型和支持的类型进行比较

PHP文件上传入门案例

PHP文件上传入门案例

但是,上面的代码存在一个小问题:

如果手动的把一个excel文件的后缀修改为.jpg了。’

上传的时候,就会把php蒙混过去,如果用户上传的是脚本(js等),就会很危险

所以我们还要做一个更加严格的过滤

需要借助PHP提供的类(php 内置的一个类)finfo,在手册的位置:

PHP文件上传入门案例 PHP文件上传入门案例

 

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/10071.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
重蔚重蔚管理团队
上一篇 2018年9月15日 10:52
下一篇 2018年9月18日 22:09

相关推荐

  • 今日分享PHP header的7种用法。

    PHP header函数用于在发送HTTP响应之前输出一些信息,如HTTP状态码、内容类型等。它有7种用法,包括设置状态码、添加自定义头信息、重定向到其他URL、显示错误信息等。 在PHP中,header()函数是一个非常重要的工具…

    2024年7月24日
    00
  • 学习php简单实现短网址(短链)还原的方法

    本文实例讲述了php简单实现短网址还原的方法。分享给大家供大家参考,具体如下:具体代码如下:<?php $info1 = '亲!暂不能解析此类短网址。'; $info2 = '亲!网址解析失败,请重试。'; $in…

    2022年6月16日
    0158
  • 如何在PHP中使用Memcached缓存技术提高图片的加载速度

    随着互联网的发展,网站的访问量越来越大,为了提高网站的性能和用户体验,缓存技术成为了必不可少的一部分。其中,Memcached是一种高性能的分布式缓存系统,广泛应用于互联网领域,特别适用于缓存大量的读操作。本…

    2023年5月19日
    01
  • PHP与Oracle查询优化。

    随着互联网应用的日益普及,PHP作为一种常见的Web开发语言,被广泛采用,而Oracle数据库则是大型企业级应用的首选数据库之一。然而,在高并发、海量数据的场景下,PHP与Oracle查询优化显得尤为重要。一、Oracle查询…

    2023年5月21日
    01
  • PHP与数据库调试的集成。

    随着互联网技术的快速发展,PHP成为了目前Web开发中最受欢迎的编程语言之一。PHP不仅具有易学易用、可扩展性强、社区活跃等优点,还能与各种数据库进行集成。然而,在实际开发过程中,调试PHP与数据库之间的交互问…

    2023年5月21日
    02
  • 如何在PHP中实现OCR识别功能。

    随着科技的不断发展,光学字符识别(OCR)技术已经成为人工智能领域中一个非常重要的方向。发布在1995年第一版PHP的语言,如今已成为web应用程序开发的重要利器之一。本文将介绍如何在PHP中实现OCR识别功能。一、OC…

    2023年5月23日
    024
  • 值得一看!高级PHP工程师必备的编码技巧及思维

    好的开发者通常以代码质量来定义。在软件行业,写好的代码意味着在在测试,更新,扩展或者修复漏洞中省钱。本文,我将向你展示一些现实生活中技巧和想法的例子,来帮助你清理你的逻辑代码,重构它,让它变得更健壮…

    2022年6月18日 PHP自学教程
    0114
  • 教你使用PHP实现查找你想要的附近人

    最近有个业务场景使用到了查找附近的人,于是查阅了相关资料,并对使用PHP实现相关功能的多种方式和具体实现做一篇技术总结,欢迎各位看官提出意见和纠错,下面开始进入正题:LBS(基于位置的服务)查找附近的人有个…

    2022年6月21日
    0127

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息