这里我试图从数组中删除值,这里我将动作和id传递给页面。我正在检查是否已设置值,然后执行操作。
我想按值从数组中删除值。这里product_id是我传递的值,必须从数组中删除该值。
对于ex:action=remove&product_id=22
,必须从数组
<?php
if(isset($_GET['action']) && isset($_GET['product_id'])){
if($_GET['action'] == "add"){
$product_id = $_GET['product_id'];
$_SESSION['cart'][] =$product_id;
}
if($_GET['action'] == "remove"){
unset($_SESSION['cart'][$product_id]);
echo "product_remove";
}
}
?>
我该怎么做?
答案 0 :(得分:3)
if ($_GET['action'] == 'remove') {
if (array_key_exists($product_id, $_SESSION['cart'])) {
unset($_SESSION['cart'][$product_id]);
echo 'product_remove';
}
}
答案 1 :(得分:2)
array_search
,如下所示:
if($_GET['action'] == "remove"){
$key = array_search ( $product_id, $_SESSION['cart'] );
unset($_SESSION['cart'][$key]);
echo "product_remove";
}
答案 2 :(得分:1)
你可以使用array_search($ product_id,$ _SESSION [&#39; cart&#39;]);
这将为您提供取消设置的关键。 如果您想以现在的方式取消设置,则在添加到购物车时,您必须使用产品ID作为密钥。
希望这有帮助!
答案 3 :(得分:1)
你可以使用super.init(nibName: "NewlyCreatedXib", bundle: nil)
作为Rizier123说,但更高效的方法是使用array_flip并通过product_id删除
array_search()