如何通过foreach循环连接数组的回声?

时间:2013-05-03 17:54:03

标签: php arrays foreach concatenation

我正在尝试创建一个变量来打印与从带有foreach循环的数组中提取的结果连接起来的字符串,但每次添加实际数组时,都会出现服务器错误。

这是我的代码:

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

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

2 个答案:

答案 0 :(得分:2)

你在第一行的末尾有一个点,我认为你想要做的是:

$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;

答案 1 :(得分:0)

编辑 - 我认为500错误是因为杂散点。 就在foreach循环之前

我不确定我是否正在关注输入/所需的输出,但这样做有什么帮助吗?

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

如果没有,$ productarray是什么样的?你想要的输出是什么样的?