1
我正在使用CakePHP 3.0.I是新的cookie概念。我已經成功創建了一個cookie,但是我想從cookie數組中刪除一個值。 這裏是我的代碼: -如何從cookie數組中刪除數組中的值?
enter code here
$cookiedata=
Array
(
[0] => 2
[1] => 1
)
$_GET['id'] = 2;
public function cartitems(){
$cookiedata = $this->Cookie->read('ProductCartdata');
$this->loadModel('Products');
$query = $this->Products->find('all')->where(['id IN' =>$cookiedata]);
$products = $query->hydrate(false)->toArray();
if(isset($_GET['id'])){
if(($key = array_search($_GET['id'], $cookiedata)) !== false) {
unset($cookiedata[$key]);
}
$this->redirect(['controller'=>'test','action' => 'cartitems']);
}
$this->set(compact('products','cookiedata'));
}
,我想這個結果: -
enter code here
Array
(
[0]=>1
)
爲什麼我們在從數組中刪除值後再次寫入cookie – kunal
那麼您想要更新Cookie嗎?漫長的回答是。當你讀取cookie時,你會得到一份數據的副本,但它在cookie中保持不變。如果您更新數據,例如通過取消設置密鑰,您還必須更新cookie數據。否則,下次您從Cookie中讀取數據時,您將收到舊數據。 – dbrumann
因此根據您我們再次寫入Cookie – kunal