• PHP
  • 常用語法介紹
  • Cookie
  • import_contacts 使用 cookie 來製作購物車
    5880
適用範圍

本篇將使用購物車來舉例新增、刪除與批量的讀取每一筆購物車 cookie 的資料。

實用性:
重要性:

加入購物車

範例將商品要暫存的資料存在陣列中,並轉存成 json 的格式並寫入cookie。
cookie 的命名使用商品的id和時間。

$mycookie="cart_".$proID."_".date("YmdHis",time());
$ckvalue=array();
$ckvalue["num"]=$proID;  //商品id
$ckvalue["qty"]=3;	 //購買數量
setcookie($mycookie,json_encode($ckvalue),time()+86400,"/");

批量讀取購物車

本範例使用 foreach 來取得網站的 cookie ,再判斷是否為購物車使用的。

foreach ($_COOKIE as $name => $value) {
    $item=explode("_",$name);
    if ($item[0]=="cart"){
        $ckvalue=json_decode($_COOKIE[$name],true);
        echo "商品的id:".$ckalue["num"]."<br>";
        echo "購買數量:".$ckvalue["qty"]."<br>";
   }
}

清除購物車

單一刪除一項購物清單

$mycookie="cart_12_201809291514";  //指定要刪除的cookie名稱
setcookie($mycookie,"",time()-28800,"/");

刪除全部的購物清單

foreach ($_COOKIE as $name => $value) {
    $item=explode("_",$name);
    if ($item[0]=="cart"){
        setcookie($name,"",time()-28800,"/");
   }
}