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();
}
...
我遇到了一个奇怪的问题。我想在 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();
}
...