2013-09-25 31 views
2

我只是想做一個發票表。我正在使用「融合發票」。所以這是代碼來獲取和顯示項目表。使用繪製html表格的foreach

Lines Of Code PHP

我想做一個非不斷變化的表,仍然打印空行。

Invoice Example

如果我有2個項目在我的表比增加5個空行所以我總共將有7條線。所以如果我有4個項目,我只需要添加2個空白行來獲得總共7個。我嘗試使用if函數,但不知道如何。

回答

1

你可能與使用for循環,而不是一個foreach的,只有如果你總是知道的籃線的最​​大數目,在這種情況下,最好 - 7

使用一個ternary operator檢查有一行符合第1-7行的籃子線,如果沒有的話 - 打印空白。

<?php 
    /** 
    * Loop through each $items 
    * line of the basket as $lines[1] .. $lines[2].. 
    **/ 
    for ($x = 0; $x <= 7; $x++) { 
     //Does this basket line have an item? 
     $hasLine = (isset($items[$x]) ? true : false); ?> 
     <tr> 
      <td><?php echo ($hasLine ? $items[$x]->item_name : ''); ?></td> 
      <td><?php echo ($hasLine ? $items[$x]->item_description : ''); ?></td> 
      <td><?php echo ($hasLine ? $items[$x]->item_quantity : ''); ?></td> 
      <td><?php echo ($hasLine ? $items[$x]->item_subtotal : ''); ?></td> 
     </tr> 
<?php } ?> 

儘管您可以隨時用數字7代替包含最大數量發票行的變量,而不管它們是否爲空。

$invoiceLines = 7; 
for ($x = 0; $x <= $invoiceLines; $x++) { 
    //Code. 
} 
+0

謝謝隊友糾正我的問題,並給我一個答案。 – user2815020

+0

歡迎您! =) – MackieeE

0

我想你最好在$ items對象中添加一些空白項。

+0

我也想過,但想要一個正確的代碼給了我MackieeE。 – user2815020