如何检查数组中是否存在给定值

时间:2015-10-06 07:37:06

标签: php arrays

我想检查数组中是否存在给定值。 这里我有一个函数,我将传递一个值作为参数。 我有一个数组$_SESSION['cart'],我已经存储了多个值,而迭代数组我想检查product_id是否在数组中

我在迭代数组时调用函数来检查product_id是否存在

    <?php
        foreach($_SESSION['cart'] as $item):
        getCartitems($item);
        endforeach;
    ?>   

功能

function productIncart($product_id){
        //check if the $_SESSION['cart']; has the given product id
        //if yes 
        //return true
        //else
        //return false
}

我该怎么做?

3 个答案:

答案 0 :(得分:2)

您可以使用isset函数查看数组的给定键是否已设置。

<?php
$array = array( "foo" => "bar" );

if( isset( $array["foo"] ) )
{
echo $array["foo"]; // Outputs bar
}

if( isset( $array["orange"] ) )
{
 echo $array["orange"]; 
} else {
 echo "Oranges does not exist in this array!";
}

要检查给定值是否在数组中,您可以使用in_array函数。

 if (in_array($product_id, $_SESSION["cart"]))
  {
    return true;
  }
  else
  {
    return false";
  }

答案 1 :(得分:2)

如果项目存在于其他in_array数组中,则

true会返回false。你可以试试这个 -

function productIncart($product_id){
    return in_array($product_id, $_SESSION['cart']);
}

答案 2 :(得分:1)

试试这个

function productIncart($product_id){
  if (in_array($product_id, $_SESSION['cart']))
  {
    return true;
  }
  else
  {
    return false";
  }
}