ファイルタイプを決定する際に 2 つの問題が発生しました。コードは次のとおりです。
if($type!=='gif' || $type!=='jpeg' || $type!=='png') {
echo "フォーマット エラー";
else {
echo $type;
}
質問 1: と等しくない場合、!== を使用する必要がありますか?
質問 2: || は機能せず、または に置き換えても機能しません。 1 つの判断だけで十分であるとしても、それが正しいとは限りません。
しかし、なぜ || これは C# では確実に機能しないのでしょうか?
2 タイプが gif、jpeg、png であればよいという意味ですか? 、その判断は正しいでしょうか?
次に、次のように記述する必要があります: if($type!=='gif' && $type!=='jpeg' && $type!=='png')
!= に変更するだけです
!= は
と等しくない !== は
と完全に等しくない 質問 2: || は機能せず、または で置き換えても役に立ちません。
論理的な判断をするには と && を使用する必要があります。
以下に等しくない: <>、!=、!==
その中で !== 比較するときは、最初に型を比較します
コンテキストでは、 $type!=='gif' || $type!== 'jpeg' || $type!=='png' は間違っています
この論理式は、$type が gif、jpeg、png のいずれかに等しくない限り、条件は true であることを意味します
$type='gif' とします。 , そうすると、jpeg と同等であってはなりませんし、png と同等でもありません
C# は火星人によって作成されたものでもありませんか?
したがって、式は OR 式ではなく、AND 式である必要があります
$type!=='gif' && $type!=='jpeg' && $type!=='png'