• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

PHP如何上传文件?看完就明白了!

php 搞代码 4年前 (2022-01-04) 51次浏览 已收录 0个评论

在之前的文章中给大家带来了《PHP中怎样获取和检测文件的属性?(总结分享)》,其中给大家详细的介绍了PHP中文件属性的相关知识,本篇文章我们一起来看一下,PHP中我们应该怎样来上传文件。希望对大家有帮助!

我们在日常生活中经常会遇到比如发个朋友圈上传一下图片、发邮件附带文件之类文件上传的步骤,那在我们PHP代码中,想要实现文件上传应该怎样操作?文件上传是PHP文件系统中十分重要的功能之一,那接下来我们一起来看一看应该怎样去实现这样的功能。

配置php.ini

想要使用文件上传的功能,首先我们需要配置php.ini,对其中的参数进行合理地设置。那我们先来看一下应该怎样去找到php.ini文件。示例如下:

首先我们输入:

<?php
phpinfo();
?>

输出结果:

由上述结果中,在Loaded Configuration File一栏中可以看到php.ini的具体路径。由此便找到了php.ini文件。

php.ini中的文件太多可以使用ctrl+F来搜索相关配置项。那我们需要配置的参数如下:

  • file_uploads: on,说明服务器开启了文件上传功能;如果为 off,则说明服务器关闭了文件上传功能。

  • upload_tmp_dir:上传文件的临时目录。在文件被成功上传之前,文件首先会存放到服务器端的临时目录中,不设置的为系统默认的目录。

  • upload_max_filesize:服务器允许上传文件的最大值,以MB为单位。

  • max_execution_time:PHP 中一个指令所能执行的最大时间,单位是秒。

  • memory_limit:PHP 中一个指令所分配的内存空间,单位是 MB。

其中我们需要注意的是:配置完成后想要配置生效的话,需要重启Apache 服务器,配置的参数才生效。

预定义

来源gao!%daima.com搞$代*!码网

变量 $_FILES

在我们配置完php.ini之后,我们就需要通过预定义变量$_FILES 来对上传文件做一些限制和判断。$_FILES 变量存储的是上传文件的相关信息,其需要保存的信息如下:

  • $_FILES[filename][name]:保存上传文件的文件名

  • $_FILES[filename][size] : 保存上传文件的大小

  • $_FILES[filename][tmp_name] : 保存上传文件的临时名称

  • $_FILES[filename][type] :保存上传文件的类型

  • $_FILES[filename][error] : 保存上传文件结果的代号,0 则表示成功

我们可以通过预定义变量 $_FILES结合HTML进行示例如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>PHP文件上传</title>
</head>
<body>
    <form action="" method="post" enctype="multipart/form-data">
        <input type="file" name="upfile">
        <input type="submit" value="上传">
    </form>
</body>
</html>
<?php
    if(!empty($_FILES)){
        foreach ($_FILES['upfile'] as $key => $value) {
            echo $key.'=>'.$value.'<br>';
        }
    }
?>

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:PHP如何上传文件?看完就明白了!

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址