如何连接通过foreach循环表示的数组的回显


How to concatenate the echo of an array as expressed through a foreach loop?

我试图创建一个变量,该变量打印字符串,这些字符串与从foreach循环的数组中提取的结果相连接,但每次我添加实际数组时,我都会得到服务器错误。

下面是我的代码:

$emailmsg .= "Price: " . $totalprice . " // Order: " . 
foreach ($productarray as $book1=>$info1)
             {if ($book1 > 0)
             {echo $info1 . ", Quantity: " . $book1 . " // ";}
                    };

我已经尝试删除每个分号以及echo语句,看看这是否是它的一部分,但无济于事。任何帮助将不胜感激,谢谢!

你在第一行的末尾有一个点,我认为你应该这样做:

$emailmsg = "Price: " . $totalprice . " // Order: ";
foreach ($productarray as $book1=>$info1)
{
    if ($book1 > 0)
    {
        echo $emailmsg .= $info1 . ", Quantity: " . $book1 . " // ";
    }
}

编辑:打印一次带有订单详细信息的消息:

$emailmsg = "Price: " . $totalprice . " // Order: ";
$order = '';
foreach ($productarray as $book1=>$info1)
{
    if ($book1 > 0)
    {
        $order .= $info1 . ", Quantity: " . $book1 . " // ";
    }
}
echo $emailmsg.$order;

编辑-我相信500的错误是由于杂散点。在foreach循环之前

不确定我是否遵循输入/期望的输出,但这样做有帮助吗?

foreach ($productarray as $book1=>$info1)
             {if ($book1 > 0)
             {$emailmsg .= "Price: " . $totalprice . " // Order: " .  $info1 . ", Quantity: " . $book1 . " // ";}
                    };

如果没有,$productarray是什么样子?您期望的输出是什么样的?