php数组没有取消设置

时间:2014-04-21 14:07:05

标签: php arrays

我想取消设置我的shoppingkart数组

 if(isset($_GET['delete'])){
        $delete=$_GET['delete'];
        if($_GET['delete']=="all"){
            unset($_SESSION['shoppingkart']);
        }
         else{
            $key=array_search($delete, $_SESSION['shoppingkart']);
            unset($_SESSION['shoppingkart'][$key]);
        }
    }

第二部分只删除数组的一个值。它有效。 但第一部分,删除整个数组不会。它只删除第一个值。

1 个答案:

答案 0 :(得分:0)

我可以看到为什么它可能会这样做的几个原因......要么你认为它已经运行了代码的第一个(未设置全部)部分,实际上它正在运行第二部分。或者,假设您使用print_r($_SESSION)查看仍然设置的内容,请确保在运行代码后使用它...

你可以尝试一下,看看代码的实际运行部分,以及代码相关部分的echo 'First statement ran'echo 'Second statement ran' ......

我这样说,因为unset($_SESSION['shoppingkart']);看起来正确