「みんな教えて! 選手権!!」開催のお知らせ

$val = filter_input( INPUT_POST, 'val' );

上記が NULL の場合、文字の 0 を代入したいのですが、

古い ? 書き方だと、

if( isset( $_POST['val'] )) {
$val = $_POST['val'];
} else {
$val = 0;
}

filter_input() を使った場合も似たような書き方をしないといけないのでしょうか ?

if( filter_input( INPUT_POST, 'flag', FILTER_VALIDATE_BOOLEAN ) == true ) {
$val = filter_input(INPUT_POST, 'val');
} else {
$val = 0;
}

これだと、古い ? 書き方と大差がないように思えるのです。むしろ長くなったというか。
もっと短くなるようなコードを書けるものなのでしょうか ?

詳しい方おりましたら、ご教授下さい。

宜しくお願い致します。

A 回答 (1件)

$default_zero_options = [


'options' => [
'default' => '0'
]
];

filter_input(INPUT_POST, 'val', FILTER_UNSAFE_RAW, $default_zero_option),
    • good
    • 0
この回答へのお礼

回答頂きありがとうございました。
勉強になります。

お礼日時:2019/07/27 04:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報