teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

見直し

2019/09/14 10:46

投稿

退会済みユーザー
answer CHANGED
@@ -58,6 +58,10 @@
58
58
  [PHP: 除去フィルタ - Manual](https://www.php.net/manual/ja/filter.filters.sanitize.php)
59
59
  これで、POST受信していない場合には空文字列`''`が変数に代入される。
60
60
 
61
+ しかし、filter_input()を通してしまうと、
62
+ 意図的に空文字列をPOST送信した場合との区別がつきにくいのが難点。
63
+ なので、私は`$_POST`を書き換えず、`isset($_POST['name'])`でPOST受信しているかどうかを見て判断するように書いたりする。
64
+
61
65
  ---
62
66
 
63
67
  その後、`$name`などの評価に移るのだけど、
@@ -91,4 +95,5 @@
91
95
  //確認画面を表示
92
96
  $data = compact( array('name', 'email', 'subject', 'body', 'ticket') ); // 変数名を列挙すると、それをキーにした配列を作ってくれる。
93
97
  display('form2_view.php', $data);
94
- ```
98
+ ```
99
+ 同じようなことを羅列するとデバッグしづらくなるので、必須ではないもののこういう書き方もあるよ、くらいの認識でOK。