php获取提交文件 (怎样用PHP获取提交文件?)

随着Web应用程序的不断发展,文件上传已经成为了现代Web应用程序中不可缺少的部分。PHP 7提供了许多内置的函数来处理请求文件。在这篇文章中,我们将介绍如何使用PHP获取提交的文件。

首先,我们需要在HTML表单中使用元素来允许用户上传文件。例如,我们可以在HTML表单中添加以下代码:

“`html

“`

当用户上传文件并提交表单时,我们需要在PHP脚本中使用$_FILES超全局变量来访问上传的文件。这个变量以文件名为键,对应一个包含文件详细信息的数组。这个数组包含以下元素:

  • $_FILES[‘file’][‘name’]:上传文件的原始文件名。
  • $_FILES[‘file’][‘type’]:上传文件的MIME类型。
  • $FILES[‘file’][‘tmpname’]:上传文件的临时存储位置。
  • $_FILES[‘file’][‘error’]:如果上传过程中发生错误,则包含一个错误代码。
  • $_FILES[‘file’][‘size’]:上传文件的大小(字节为单位)。

使用上传文件的原始文件名,我们可以通过以下代码将文件保存到指定的目录中:

php
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["image"]["name"]);
move_uploaded_file($_FILES["image"]["tmp_name"], $target_file);
echo "The file has been uploaded.";

在上面的例子中,我们首先指定了目标目录,然后将上传的文件从临时位置移动到目标目录。最后,我们向用户显示一个成功的消息。

如果上传过程中发生错误,我们可以使用$_FILES[‘file’][‘error’]来定位错误。常见的错误代码包括:

  • UPLOADERROK (0):没有错误发生,文件上传成功。
  • UPLOADERRINI_SIZE (1):上传的文件大小超出了php.ini中配置的大小限制。
  • UPLOADERRFORM_SIZE (2):上传的文件大小超出了HTML表单中指定的最大大小限制。
  • UPLOADERRPARTIAL (3):文件只上传了一部分。
  • UPLOADERRNO_FILE (4):没有文件被上传。
  • UPLOADERRNOTMPDIR (6):缺少临时文件夹。
  • UPLOADERRCANT_WRITE (7):无法将文件写入磁盘。

最后,我们需要注意的是,PHP的文件上传功能需要在php.ini文件中启用。我们需要确保以下变量是正确的:

ini
file_uploads = On
upload_max_filesize = 2M # 上传文件大小的最大限制
post_max_size = 8M # POST数据大小的最大限制
upload_tmp_dir = /tmp # 上传临时目录

总之,使用PHP获取提交的文件非常简单。我们只需要使用$_FILES超全局变量,将上传的文件从临时位置移动到指定的目录即可。记得在php.ini文件中启用文件上传功能,并设置适当的大小限制。

如有侵犯您的权益请邮件发送:rainpro@foxmail.com,站长看到会第一时间处理
客栈猫 » php获取提交文件 (怎样用PHP获取提交文件?)

提供最优质的资源集合

立即查看 了解详情