检查我的POST值是否在我的数组中

时间:2014-04-03 12:05:53

标签: php arrays

我通过POST收到一个值(持续时间),例如包含6个。

我想检查这个值是否在我的数组中,我找到了这个函数,但它对我不起作用。

$duration = $_POST['duration'];

    // Constantes pour l'abonnement
    $suscribe = array(
        'prices' => array(
            1=>10,
            3=>25,
            6=>50,
            )
        );

        if (in_array($duration, $suscribe['prices']))
        {
            echo 'this array contains '.$duration.'';
        }

1 个答案:

答案 0 :(得分:2)

使用array_key_exists,而不是in_array,因为您正在搜索键,而不是值

$duration = $_POST['duration'];

// Constantes pour l'abonnement
$suscribe = array(
    'prices' => array(
        1=>10,
        3=>25,
        6=>50,
        )
    );
    //you are searching for a key, not a value
    if (array_key_exists($duration, $suscribe['prices']))
    {
        echo 'this array contains '.$duration.'';
    }