Ich benutze CakePHP 3.0. Ich bin neu in Cookie-Konzept. Ich habe erfolgreich einen Cookie erstellt, aber ich möchte einen Wert aus dem Cookie-Array löschen. Hier ist mein Code: -Wie lösche ich einen Wert aus dem Array im Cookie-Array?
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'));
}
Und ich will das Ergebnis: -
enter code here
Array
(
[0]=>1
)
Warum schreiben wir wieder Cookie nach dem Löschen Wert aus Array – kunal
Nun, Sie möchten das Cookie aktualisieren, nicht wahr? Die langatmige Antwort ist. Wenn Sie den Cookie lesen, erhalten Sie eine Kopie der Daten, die jedoch im Cookie erhalten bleibt. Wenn Sie die Daten aktualisieren, z. Indem Sie einen Schlüssel deaktivieren, müssen Sie auch die Cookie-Daten aktualisieren. Andernfalls erhalten Sie beim nächsten Lesen des Cookies die alten Daten. – dbrumann
also nach dir schreiben wir wieder cookie – kunal