使用多维数组数据创建动态表?

时间:2016-04-21 12:31:39

标签: php laravel

你好专家我是laravel和php的新手。我有一个多维数组和这个数组数据我想创建一个动态表,它的最大计数将是10作为一个新手我无法达到完美的结果。我的阵列如下:

  

阵列:4 [▼
0 =>数组:2 [▼
      0 => {#404▼
        +“id”:290
        +“金额”:“8500.00”
      }
      1 => {#403▼
        +“id”:399
        +“金额”:“8500.00”
      }
] 1 =>阵列:4 [▼
      0 => {#402▼
        +“id”:107
        +“金额”:“6590.00”
      }
      1 => {#401▼
        +“id”:355
        +“金额”:“6590.00”
      }
      2 => {#400▼
        +“id”:698
        +“金额”:“6590.00”
      }
      3 => {#399▼
        +“id”:734
        +“金额”:“6590.00”
      }
] 2 =>数组:1 [▼
      0 => {#108▼
        +“id”:21
        +“金额”:“3240.00”
      }
] 3 =>数组:2 [▼
      0 => {#397▼
        +“id”:27
        +“金额”:“3030.00”
      }
      1 => {#396▼
        +“id”:50
        +“金额”:“3030.00”
      }
]>

使用这个数组我想创建一个像下面这样的表:

  

序列号
  金额1 290   8500
1 399   8500

     

2 107   6590
2 355   6590
2 698   6590
2 734   6590

     

3 108   3240

     

4 27 3030
  4 50 3030

我在laravel中尝试这个:

   $flag = 0;

   $tableDesign = '';

  for($i=0;$i<count($data);$i++) {
  $tableDesign .="<tr><td>".$flag++."</td><td>".$data[$i][0]."</td>  <td>".$data[$i][1]."</td></tr>";
  if($flag == 10)
  { return;}

  }

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以重新排列数组,然后在表格中显示:

$newData = array();
$flag = 1;
foreach($data as $key => $elements) {

    if($flag > 10) {
        break;
    }

    foreach($elements as $element) {

        $newDataElement = array(
            'serial' => $key + 1,
            'id' => $element['id'],
            'amount' => $element['amount']
        );

        array_push($newData, $newDataElement);
    }

    $flag++;
}

然后你可以简单地显示它:

<?php foreach($newData as $element): ?>
<tr>
    <td><?php print $element['serial']?></td>
    <td><?php print $element['id']?></td>
    <td><?php print $element['amount']?></td>
</tr>
<?php endforeach; ?>