質問: (string)filter_input(INPUT_POST, 'email'); /* 2. 値の形式に関するバリデーション */ if (false !== filter_var($email, FILTER_VALIDATE_EMAIL)) { echo "正しいEメールアドレスです: $email\n"; } else { echo "Eメールアドレスの形式が不正です: $email\n"; } ``` 上記コードの`if (false !== filter_var($email, FILTER_VALIDATE_EMAIL)) {`こちらの部分を`if ( filter_var($email, FILTER_VALIDATE_EMAIL)) {`こちらに置き換えても挙動は同じでしょうか? 以下のコードで値を入力し試してみた限りでは、同じように思えましたが、確証がなかった為、質問させて貰いました。 ``` ```
回答: PHPマニュアルを確認しますと > > filter_var() > > 返り値 ¶ > > フィルタリングされたデータ、あるいは処理に失敗した場合に FALSE を返します。 > > > ですが、おおよそ同じ挙動になるものと思います。 ただ、「失敗した場合にFALSEを返す」というのが仕様的に明示されているため(成功した場合は正しいメールアドレス)、 「それ以外である」という表現をするため筆者はあえて`false !==`と 確実に返ってくる内容をもとに判断させているものと思います。