当前位置:首页 » php学习笔记 » php文件上传--中

php文件上传--中

原创 stpevenchow 18°c 2019年08月29日 22:21 php学习笔记 0条评论
  移步手机端

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章
php文件上传--中摘要:

    继续进行文件上传的学习,今天主要是针对文件上传过后的操作。    1、限制文件上传的大小    2、限制文件上传的类型   ...

总字数:1825

    继续进行文件上传的学习,今天主要是针对文件上传过后的操作。

    1、限制文件上传的大小

    2、限制文件上传的类型

    3、文件存放位置

    4、文件重命名等操作

   一、 限制文件上传的大小,这里要用到if语句以及一个php函数(pow— 指数表达式),我们可以参照var_dump($_FILES);打印出来的数据来写

    至于pow函数如何操作

    var_dump(pow(2,8));//输出为256,里面(2,8)是表示2的8次方;我们判断字节的时候1M=1024kb,1kb=1024字节

    php文件上传.png

    具体代码如下,获取到size后在进行判断如果字节大小超过了2m就显示'文件大小超过了规定大小'

    if($_FILES['file']['size'] >(pow(1024 , 2)*2)){

        exit('文件大小超过规定大小,请重新上传');

    }

    二、限制文件上传的mime类型,以及文件后缀这里直接赋值变量表示,代码如下

    $allMime = ['image/png' , 'image/jpeg' , 'image/gif'];

    $allFix = ['png' , 'jpeg' , 'gif'];

    把mime类型设置好了过后,还是继续用if语句进行判断,这里要灵活运用到pathinfo和in_array 这两个函数

    pathinfo— 返回文件路径的信息;

    in_array检查数组中是否存在某个值

    接下来用pathinfo 获取到file数组下name的信息

    $info = pathinfo($_FILES['file']['name']);

    $subfix = $info['extension'];

    如下图所示

    php文件上传.png

    接下来就是用if语句+in_array根据上面设定的条件来做文件上传的判断

    if(!in_array($subfix , $allFix)){

    exit('不准许的文件后缀');

    }

    mime类型也是通过if语句这样来做判断

    if(!in_array($_FILES['file']['type'] , $allMime)){

    exit('不准许的文件类型');

    }

    这样文件的类型判断和后缀限制,以及大小就写好了,明天进行拼接文件的上传路径

欢迎阅读本文,如果本文对您有所帮助,记得收藏/转发☺

本文链接:http://stpeven.com/post/100.html

版权声明:本文为原创文章,版权归 stpevenchow 所有,欢迎分享本文,转载请保留出处!

本文标签:

三人行,必有我师

评论(0)

发表评论:


【顶】 【踩】 【好】 【懵】 【赞】 【表情】

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

推荐阅读
09月03日

php学习之正则(4)

发布 : | 分类 : php学习笔记 | 评论 : 0人 | 浏览 : 8次
php学习之正则(4)

    继续学习正则匹配,今天最主要利用正则简单的匹配url地址,下面以http://www.baidu.com 举例    那么要用到的正则符号有哪些呢?    首先我们先试试w和W来匹配百度url地址,如下图所示        这个是已经匹配成功的,w是匹配a-z,A-Z,0-9,所以当w匹配h...

标签 :
09月02日

php学习之正则(3)

发布 : | 分类 : php学习笔记 | 评论 : 0人 | 浏览 : 13次
php学习之正则(3)

    昨天掌握了d,D,W,w,S,s等这些的用法,在来回顾简单的回顾一下    /d---0-9数字    /D---非0-9的数字都能匹配    /w---匹配a-z,A-Z,0-9,_    /W---除了a-z,A-Z,0-9,_都能匹配到    /...

标签 :
09月01日

php学习之正则(2)

发布 : | 分类 : php学习笔记 | 评论 : 0人 | 浏览 : 17次
php学习之正则(2)

    继续正则的学习--元字符    概念:元字符使正则表达式具有处理能力。所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式。    \d---匹配0-9数字    \D---非0-9数字都能匹配到    \w---匹...

标签 :
08月31日

php学习之正则(1)

发布 : | 分类 : php学习笔记 | 评论 : 0人 | 浏览 : 14次
php学习之正则(1)

    今天开始学习正则表达式,正则常用于邮箱,url地址,手机号,身份证号验证,银行卡,还可以修改php操作数据库的配置文件,正则还能做查找,匹配,替换。下面是正则表达式的概念   概念:     正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。  基本语法...

标签 :
08月30日

php文件上传--下

发布 : | 分类 : php学习笔记 | 评论 : 0人 | 浏览 : 19次
php文件上传--下

    解决了mime类型和文件后缀过后,接下来就是创建文件上传路径,这里要用到前段时间学习地mkdir,file_exists,is_uploaded_file语句还是要用到if语句,具体代码如下:    设置好要上传的文件名称    $path = 'updata/';    if(!$file_exists($pat...

标签 :