PHP文件上传时只接受某些文件类型

Gue*_*dio 0 php

我确信这是一个简单的问题,但似乎无法找到一个有效的简单解决方案。我正在创建一个图像上传网站,我只希望 JPEG 和 PNG 是允许的文件类型。这是我的 PHP 代码的开始,当用户在选择他们的文件后单击“上传”按钮时运行该代码。在此之后,我只有一长串 IF 语句,它们都可以运行和工作。

任何帮助将非常感激。

if ($_FILES['filename']['name']['size']) {

    session_start(); 
    $name = $_FILES['filename']['name'];
    $size = $_FILES['filename']['size'];
    $tmp_name = $_FILES['filename']['tmp_name'];

    if($size < 2000000) {...
Run Code Online (Sandbox Code Playgroud)

Jus*_*ohn 5

我认为这会做

    $allowed_types =array('jpg','png')
    $userFile = $_FILES['filename']['name'];
    $error = null;

    // Get the file extension
    $extension = pathinfo($userFile, PATHINFO_EXTENSION);

    // Search the array for the allowed file type

    if (in_array($extension, $allowed_types, false) != true) {

        $error = "ERROR: ILLEGAL FILE TYPE";
        return $error; // or use  exit;
    }
Run Code Online (Sandbox Code Playgroud)