【发布时间】:2016-05-19 02:10:37
【问题描述】:
<?php
session_start();
if(!empty($_SESSION["cart_item"])) {
if(in_array($_GET['code'],$_SESSION["cart_item"])){
echo "hiiii";
}else{
echo "byeee";}
}else {
$itemArray = array($_GET['code']=>array('pcode'=>$_GET['code']));
$_SESSION["cart_item"] = $itemArray;
}
?>
我正在尝试使用 in_array 检查 $_SESSION[cart_item] 中是否有类似的项目存储,但它只返回 false,尽管我确保该值确实存储在 $_SESSION 中。
当我进行一些检查时,由于我的 $_SESSION 有一个多维数组,我应该使用 array_key_exists,这是我的代码
if(array_key_exists($_GET['code'],$_SESSION["cart_item"])){
echo "hiiii";
}else{
echo "byeee";}
但它仍然返回 false。谁能指出我的错误?
顺便说一句,我是新手,提前致谢。
【问题讨论】:
-
分享你的
$_SESSION["cart_item"]数组。 -
在我第一部分代码的 else { } 中
-
最好把
if(!empty($_SESSION["cart_item"]))改成if(isset($_SESSION["cart_item"])) -
查看这个答案:https://3v4l.org/gmu7k
-
谢谢,我想我注意到我做错了什么:) 祝你有美好的一天