我想验证数组是否列在数组中。 我试图将产品名称和网址添加到会话中,该会话将包含访问者访问的所有产品,但我不希望它添加两次相同的产品,因此进行验证。因此,如果产品已经在数组中,我希望它什么都不做,但是如果它不属于数组,它需要被添加。这是迄今为止我所知道的。唯一的问题似乎是验证。检查数组是否在数组中
$viewed_product_url = $viewed_base.$_SERVER['REQUEST_URI'];
if(!isset($_SESSION['products'])) {
$_SESSION['products'] = array('product'=>$products_name,'url'=>$viewed_product_url);
} else {
$found = false;
foreach($_SESSION['products'] as $each_item) {
while(list($key,$value)=each($each_item)) {
if($key == 'product' && $value == $products_name) {
$found = true;
}
}
}
if($found==false){
echo 'found';
$_SESSION['products'][] = array('product'=>$products_name,'url'=>$viewed_product_url);
}
}
这些是我正在
警告错误:传递给每个()变量不是数组或对象在C:\ XAMPP \ htdocs中\客户\ MSL \ product.php第10行
警告:传递给每个()变量不是数组或对象在C:\ XAMPP \ htdocs中\用户\ MSL \ product.php上线10 发现
所以我只是想知道你怎么可以检查数组是否已经在多元数组中。或者如果有其他替代方案可以实现我在这里想要的。
你治疗'$ _SESSION [ '产品']'作为一个2维数组。但是当你初始化它时,它只是一个一维关联数组。 – Barmar