PHP中的多个foreach语句

时间:2018-08-25 18:56:54

标签: php loops foreach

很抱歉,我仍在学习PHP。

我有一个foreach语句,该语句从可以正常工作的API中获取一些产品数据。我现在正尝试添加一条附加的foreach语句以获取购物车总额,但是当我在文本编辑器中添加此语句时,将引发语法错误。毫无疑问,我在做错事,谁能指出我的正确方向?

这是我尝试在foreach总计中添加的代码段。远。

     if (!empty($data['data'])) {

        // Set vars
        $products = array();
        $output = '';

        // Cart Values
        $cartValues = $data['data'];
        $output .= $modx->getChunk($cartTpl, $cartValues);

        // Product Values
        foreach($data['data']['products'] as $item) {
         foreach($item as $key => $value) {
            $products[$key] = $value;
        }

        $listProducts .= $modx->getChunk($productsTpl, $products);
        $output = str_replace('[[+products]]', $listProducts, $output);

        // Total Values
        foreach($data['data']['totals'] as $total) {
         foreach($total as $key => $value) {
            $totals[$key] = $value;
        }

        $listTotals .= $modx->getChunk($totalsTpl, $totals);
        $output = str_replace('[[+totals]]', $listTotals, $output);

    }

3 个答案:

答案 0 :(得分:0)

添加$ sum = 0;循环之前 并把$ sum + = $ value;

答案 1 :(得分:0)

您缺少foreach的右花括号:

    // Product Values
    foreach($data['data']['products'] as $item) {
     foreach($item as $key => $value) {
        $products[$key] = $value;
     } // <--- Missing closing curly brace
    }

    // (...)

    // Total Values
    foreach($data['data']['totals'] as $total) {
     foreach($total as $key => $value) {
        $totals[$key] = $value;
     } // <--- Missing closing curly brace
    }

答案 2 :(得分:0)

在第17和26行的for循环之后,您错过了右大括号 您的代码段:

https://codebrace.com/editor/b03a5b34c