如何检查和匹配php中范围内的值

时间:2017-04-13 05:07:02

标签: php

我想检查传入值是否在以下范围内

80-120  and 60-80.

这是我的传入值。如何使用if语句检查它。

$a= 87
$b= 69

我试过了

    if(between($a, 80, 120 && $b, 60, 80)){
    echo 'good';
    exit();
    }


or

if($a = 80-120 && $b= 60 - 80){
    echo 'good';
    exit();
    }

上面的代码不起作用。我是php新手。感谢

6 个答案:

答案 0 :(得分:1)

试试这个:

$a= 87;
$b= 69;
if (in_array($a, range(80, 120)) && in_array($b, range(60, 80))) {
    echo 'good';
    exit();
}

这里range方法返回一个数字范围在80&之间的数组。 120和in_array检查您的号码是否在该阵列中。

答案 1 :(得分:0)

我试过这个:

$range1 = range(80, 120);
$range2 = range(60, 80);
$a = 87;
$b = 69;

if(in_array($a, $range1)) {
    echo $a.' exist in range1';
} else if(in_array($b, $range1)) {
    echo $b.' exist in range1';
}if(in_array($a, $range2)) {
    echo $a.' exist in range2';
}if(in_array($b, $range2)) {
    echo $b.' exist in range2';
}

答案 2 :(得分:0)

您可以使用filter_var

filter_var($aNumber, FILTER_VALIDATE_INT, 
    array(
        'options' => array(
            'min_range' => $minNumber, 
            'max_range' => $maxNumber
         )
    )
);

在您的代码中实现:

if ((filter_var($a, FILTER_VALIDATE_INT, 
    array(
        'options' => array(
            'min_range' => 80, 
            'max_range' => 120
         )
    )
)) && (filter_var($b, FILTER_VALIDATE_INT, 
    array(
        'options' => array(
            'min_range' => 60, 
            'max_range' => 80
         )
    )
))) {
    echo '$a is between 80-120 and $b is between 60-80';
}

答案 3 :(得分:0)

实现这一目标的简单方法是

if (($a> 80 && $a< 120) || ($b> 60 && $b< 80))
{
//code
}

答案 4 :(得分:0)

PHP code demo

call_user_func_array("range",explode("-",$range1)) 这将返回从80120

的数组范围
<?php
$range1='80-120';
$range2='60-80';
$a= 87;
$b= 69;
if(in_array($a, call_user_func_array("range",explode("-",$range1))))
{
    echo "In range";
}
if(in_array($b, call_user_func_array("range",explode("-",$range2))))
{
    echo "In range";
}

答案 5 :(得分:0)

尝试使用&amp;&amp; amp;运算符如下:

<?php
// range 80-120  and 60-80.
$a = 87;
$b = 69;

if(($a >= 80 && $a<=120)  && ($b >= 60 && $b <= 80)){
    echo "yes a and b in the range";
}
else{
    echo "sorry a and b not in the range";
}