簡體   English   中英

如何從數組會話中僅取消設置一個值

[英]how to unset just one value from array session

case "remove":
    if(!empty($_SESSION["cart"])) {
        foreach($_SESSION["cart"] as $k => $v) {
            if($_GET["code"] == $k){
                //print_r($_SESSION["cart"][$k]);

                unset($_SESSION["cart"][$k]);   
                header("Location:../cart.php");         
            } else {

            }
        }
    }
    break;

當我的購物車中只有一個物品時,該功能運行良好,但是當我有很多物品時,該物品無法刪除,如何解決此問題?

您需要先完成所有項目,並且僅在foreach的末尾才能繼續該位置:...

case "remove": 
    if(!empty($_SESSION["cart"])) { 
        foreach($_SESSION["cart"] as $k => $v) {
            if($_GET["code"] == $k) unset($_SESSION["cart"][$k]);   
        }
        header("Location:../cart.php");         
    }
    break;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM