如何在PHP中向变量添加foreach循环的结果

Bah*_*Bah 1 php arrays variables foreach loops

foreach ($_SESSION["products"] as $cart_itm) {      
    $items = $cart_itm["code"]
    . " - " . $cart_itm["qty"]
    . " - "  . $cart_itm["price"]
    . "<br>" ;

    echo $items;
}
Run Code Online (Sandbox Code Playgroud)

我有这个代码从我的篮子中获取每个项目并显示它们,问题是当我尝试在我的代码中的其他地方使用此变量时,它只显示数组中的最后一项,我意识到这是因为for循环保持覆盖最后一个值.有没有办法可以将所有结果放入一个变量中,或者使用循环来为它们分配太多不同的变量?

我也试着把

foreach ($_SESSION["products"] as $cart_itm) {      
    $items .= $cart_itm["code"]
    . " - " . $cart_itm["qty"]
    . " - " . $cart_itm["price"]
    . "<br>" ;

    echo $items;
}
Run Code Online (Sandbox Code Playgroud)

通过论坛查看但返回我的项目没有定义

所以我试着把

$items= ("") 
Run Code Online (Sandbox Code Playgroud)

但仍然得到最终结果任何帮助表示赞赏,谢谢

Riz*_*123 5

您可以将变量连接在一起,但必须首先初始化变量.

(否则你可以想到这样的事情:'我想把这个字符串连接成什么',所以这显然不会起作用,这就是为什么你初始化你的变量所以,你可以说:'我想把这个字符串连接到一个空字符串')

像这样的东西:

$items = "";
foreach ($_SESSION["products"] as $cart_itm) {      
    $items .= $cart_itm["code"] . " - " . $cart_itm["qty"] . " - "  . $cart_itm["price"] . "<br>" ;
}
Run Code Online (Sandbox Code Playgroud)

或者你可以把它们放在一个数组中:

$items = array();
foreach ($_SESSION["products"] as $cart_itm) {      
    $items[] = $cart_itm["code"] . " - " . $cart_itm["qty"] . " - "  . $cart_itm["price"] . "<br>" ;

}

print_r($items);
Run Code Online (Sandbox Code Playgroud)