PHP if 语句不能正常工作(自相矛盾)

PHP if statement doesn't work properly (paradoxical)

我遇到了一个奇怪的问题。我想在 PHP 中编写一个简单的多图像上传脚本。 所以我需要一个 if 语句来检查图像是否具有正确的图像类型,但它没有按预期工作。我尝试上传的图像是 .jpg 图像。 "jpg" 信息存储在变量 $mediaFileType 中,该变量由 if 语句检查。通常它现在应该执行 else 语句中的脚本,但它总是做相反的事情并声明 "jpg" != "jpg" = true。显然不是。那我在这里错过了什么?

if($mediaFileType != 'jpg' && $mediaFileType != 'png' && $mediaFileType != 'jpeg')
 {

    echo 'Wrong Media Type<br>';
    echo $mediaFileType;
    exit();

} else {
    ....
}

该网站简单地说:

Wrong Media Type
jpg

您可以使用:

if (!in_array(trim($mediaFileType), ['jpg', 'png', 'jpeg'])) {
    echo 'Wrong Media Type<br>';
    echo $mediaFileType;
    exit();
}

你的问题可能是空白字符

if (!in_array(trim($mediaFileType), ['jpg', 'png', 'jpeg']))
{
    echo 'Wrong Media Type<br/>';
    var_dump($mediaFileType);
    exit();
}
...