我的问题看起来可能非常愚蠢,但我真的被困在这里。
我知道$ _SESSION是全球变量但我似乎无法知道如何检索它存储的值。
例如:
<?php
if(isset($_SESSION["cart_products"]))
{
foreach ($_SESSION["cart_products"] as $cart_itm)
{
//set variables to use in content below
$product_name = $cart_itm["product_name"];
$product_code = $cart_itm["product_code"];
echo '<p>'.$product_name.'</p>';
echo '<p><input type="checkbox" name="remove_code[]" value="'.$product_code.'" /></p>';
}
}
echo $_SESSION["cart_products"];
?>
在这里你可以看到,$_SESSION["cart_products"]
拥有一定的价值(信息,如产品名称,产品代码等)。现在,问题是我只想回显存储在$_SESSION["cart_products"]
中的所有产品名称。
由于这是一个购物车清单,它包含多个产品的详细信息。但是,当我回显$product_name
时,它只显示列表中最后一个产品的名称。并回显出$_SESSION["cart_products"]
给出array to string
错误。
请告诉我如何列出由,
分隔的所有产品名称。
任何帮助将不胜感激。 谢谢先进。 PS:我已经试过使用implode()
函数。
你不能回应一个数组。在字符串上下文中输出数组,例如'$ foo = array(); echo $ foo'只会产生文本文本'Array'。你究竟如何/在哪里输出'$ product_name'?一旦您的循环退出,'$ product_name'将包含您打开的最后一个项目,然后不会再更改。 –
使用print_r($ _ SESSION [“cart_products”])函数显示所有数据...不回显,因为$ _SESSION [“cart_products”]是数组。 –