Php 检查数组中是否存在一个值

Php 检查数组中是否存在一个值,php,Php,可能重复: 我在PHP中遇到了一个问题。所以,我的问题是,我想看看会话中是否存在特定的值(在该会话中我存储了一个数组)。如果该值存在,则返回一个布尔值($check=TRUE)。但是当我试图用die(var_dump($check))停止脚本时;为了检查值,我总是收到以下通知: 未定义的变量检查 这是我的代码: $individualitem[] = $_SESSION["books"] ; foreach ($individualitem as $key =>

可能重复:

我在PHP中遇到了一个问题。所以,我的问题是,我想看看会话中是否存在特定的值(在该会话中我存储了一个数组)。如果该值存在,则返回一个布尔值($check=TRUE)。但是当我试图用die(var_dump($check))停止脚本时;为了检查值,我总是收到以下通知:

未定义的变量检查

这是我的代码:

 $individualitem[] = $_SESSION["books"] ;

          foreach ($individualitem as $key => $idividualvalue){
            if($individualitem == $card){
                $check = TRUE;
            }     
         }  
     // die (var_dump($check));

如果您的条件似乎从未满足,请尝试将
$check
默认为false

$individualitem[] = $_SESSION["books"] ;
$check = false;
foreach ($individualitem as $key => $idividualvalue)
{
    if($individualitem == $card)
    {
        $check = true;
    }     
}  
     // die (var_dump($check));

可能是因为if条件总是false。在实际的foreach循环之前定义了$check

$check = false;  
foreach ($individualitem as $key => $idividualvalue){
     if($individualitem == $card){
         $check = TRUE;
     }     
}  
但是为了你的目的,试试看

$check = false;
if (in_array($card, $individualitem)) {
    $check = true;
}

你应该试试php的内置函数

它不会告诉他为什么它会抛出通知,但这确实是一种更好的完成任务的方法。即使你对php非常陌生,你也应该这样做。当你回答时,你会马上得到答案。我们愿意回答你的问题,但不愿意回答重复的问题。