6

変数が整数であるかどうか、および彼女が休眠状態にあるかどうかを確認しようとしています: 2-15.

関数を使用してこれを作成しようとしていfilter_var()ます。min_rangeしかし、正しい使用方法とmax_rangeパラメーターがわかりません。

これは機能しません。どこが間違っていますか?

$c = 48;

if ( filter_var($c, FILTER_VALIDATE_INT , array("min_range"=>2,"max_range"=>15)) === false ) {
    echo "bad";
}
4

2 に答える 2

12

The min_range and max_range values have to be one level, deeper:

// for filters that accept options, use this format
$options = array(
    'options' => array(
        'default' => 3, // value to return if the filter fails
        // other options here
        'min_range' => 0
    ),
    'flags' => FILTER_FLAG_ALLOW_OCTAL,
);

See: http://php.net/filter_var

So:

$c = 48;

if (filter_var($c, FILTER_VALIDATE_INT, array("options" => array("min_range"=>2,"max_range"=>15))) === false) {
    echo "bad";
}
于 2013-01-30T13:48:57.297 に答える
3

これらは options 配列にある必要があります。

if ( filter_var($c, FILTER_VALIDATE_INT, array(
        "options"=>array(
            "min_range"=>2,
            "max_range"=>15
        )
    )) === false ) {
    echo "bad";
}

かなり複雑な書き方2 <= $c && $c <= 15ですが、

于 2013-01-30T13:50:08.423 に答える