JavaScriptフォームからの送信値があり、PHPで$_POST
で受け取ります。
この扱いを調べてみますと、filter_var
がモダンな実装のように見受けられました。
しかし送信値がtrue
|false
の場合、'yes'
までを通してしまうfilter_var
の使用に疑問があります。
php
1$boolean = filter_var($_POST['is_requested'], FILTER_VALIDATE_BOOLEAN);
filter_var
を使わない以下の実装では何か問題があるのでしょうか?
php
1$boolean = !empty($_POST['is_requested']) ? $_POST['is_requested'] === true : false;
実際に以下を試しましたところ特に問題ないように見えるのですが…
PHP
1<?php 2$is_requested = true; // true|false 3 4//$boolean = filter_var($_POST['is_requested'], FILTER_VALIDATE_BOOLEAN); 5$boolean = filter_var($is_requested, FILTER_VALIDATE_BOOLEAN); 6var_dump( $boolean ); 7 8//$boolean = !empty($_POST['is_requested']) ? $_POST['is_requested'] === true : false; 9$boolean = !empty($is_requested) ? $is_requested === true : false; 10var_dump( $boolean );
…ですが送信値ですから慎重にいきたいと思い質問させていただきました。
ご意見賜れましたら幸いです。宜しくお願い致します。
回答2件
あなたの回答
tips
プレビュー