php上传文件

前言

由于需要设置提交报告,因此需要写一个提交模板

过程

设置php.ini以及相关参数讲解

与网上大部分内容一样,需要对php.ini的内容进行修改
我们可以通过使用locate php.ini对此文件进行查找定位(如果没有请安装locate服务)
内容修改如下:

  • file_uploads= On
    (开启php文件上传功能)
  • upload_tmp_dir =
    (开启临时存放位置,若此项为空,则为系统默认位置)
  • upload_max_filesize = 2M
    (设置最大上传文件大小,默认为2M)

请注意:该选项与下面的选项息息相关,如果下面没有修改,修改上面也没有用

  • post_max_size = 8M
    (设置post表单最大提交大小,要和上面的一起设置 此大小要大于上面的大小,否则容易上传空文件上来)
  • post_max_size = 100M
    (如果启用了内存限制,则应该小于这个值【俺没用过】)
  • max_execution_time=30
    (每个php脚本最大的运行时间,默认为30s)
  • max_input_time = 60
    (设置php解析文件所需要的时间,若上传文件为大文件的时候,应将此项内容修改长一点,如果设置为0,则代表无限制)
  • memory_limit = 128M
    (设置每个php脚本使用内存的最大容量,如果脚本过于垃圾,则可以限制它,防止影响其他程序,若设置为-1则代表无限制)

上传文件参数解释

当使用php上传文件时,$_FILES[‘filename’]则是php返回的关于上传文件的一串参数值,以下是具体解释

  • [‘name’] 代表的是上传文件的文件名称
  • [‘type’]文件类型,即doc文件、jpg文件,ppt文件等
  • [‘tmp_name’]如果相关参数没有问题,文件则会被上传到临时存放位置,如上面设置的文件存放点或者是系统默认的存放位置,并在此处会返回文件的存放路径以及临时存放名称
  • [‘error’]如果相关参数设置没有问题,则不会产生报错,即error=0
  • [‘size’]文件大小,代表着这个文件有多大

相关错误解释

如果发现临时文件没有内容但是一切正常不报错

这个问题是最苟的,因为不报错,所以有很多情况,其中我只讨论与我遇到的(写博客原因)

  • 请检查是否给予权限
    网页以及php的权限基本上都是www-data,但是你的文件夹是root的,因此可能会出现无权操作文件的情况出现,因此我们可以在你设置的临时文件夹以及文件最后的存储位置,使用
    sudo -u www-data touch 123命令来查询是否具有权限创建文件,若发现没有,则需要使用chown www-data:www-data -R '你所要赋予权限的文件夹'进行赋予相关权限(如果显示权限不够加sudo或者使用root用户进行操作)

如果发现临时文件存放位置为空

一般来讲那就证明文件无法存放在相关位置,请检查文件大小是否超出php.ini中的设置,如果确实超过了,则需要对其进行更改

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值