首页  >  文章  >  数据库  >  如何在 PHP 中限制文件上传类型和大小?

如何在 PHP 中限制文件上传类型和大小?

Susan Sarandon
Susan Sarandon原创
2024-11-01 01:14:02871浏览

How to Restrict File Upload Types and Sizes in PHP?

限制 PHP 中的文件上传类型

处理文件上传时,验证文件类型和大小至关重要,以防止未经授权或恶意内容正在上传到您的系统。在您的情况下,您遇到了当前代码的问题,该代码没有正确限制文件类型,也没有检查文件大小。

要解决此问题,让我们使用更可靠的方法:

<code class="php">function allowed_file() {
  // Create an array of allowed mime types
  $allowed = array('application/doc', 'application/pdf', 'application/docx');

  // Check if both files are allowed types
  if (in_array($_FILES['resume']['type'], $allowed) && in_array($_FILES['reference']['type'], $allowed)) {
    // Check file sizes
    if ($_FILES["resume"]["size"] < 400000 && $_FILES["reference"]["size"] < 400000) {
      // File types and sizes are both valid
      return true;
    }
  }

  // Otherwise, return false
  return false;
}</code>

说明:

  • 我们创建一个允许的 mime 类型数组,其中包括所需的类型(pdf、doc、docx)。
  • 我们使用 in_array() 来检查两个文件的 mime 类型是否存在于允许的数组中。
  • 如果允许文件类型,我们会检查两个文件的大小以确保它们低于指定的限制。
  • 如果满足所有条件,函数返回true,允许文件上传。否则,返回 false。

通过使用 mime 类型验证文件类型并显式检查文件大小,您可以有效限制文件上传并确保仅授权且非恶意的文件上传到您的系统。

以上是如何在 PHP 中限制文件上传类型和大小?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn