2016-03-29 2 views
-1

Мне нужно напечатать следующие данные в таблице, используя для loop.I знаю, что будет два explode.First для "|" и второй для «,», и после этого он должен быть напечатан.
Как печатать данные в таблицу, используя для цикла, используя php

PHP:

$data=750ML XYZ,750ML ABC|280,30|60,20|16800,600|12.25,25.25|205800,15150 
    for($i=0;$i<count($d);$i++) 
    { 
    $d2[]=explode(",",$d[$i]); 
echo "<tr>"; 
    //Suggest here 
echo "</tr>" 
    } 

Ожидаемый результат:

Goods   Pkg  Avg  Qty  Rate Total 
750ML XYZ  280  60  16800 12.25 205800 
750ML ABC  30  20  600 25.25 15150 

Я пытался, но оно не work.I утра confused.Please дать некоторые suggestion.Thanks заранее.

+0

опубликуйте результаты того, что вы пробовали и код. Тогда мы можем вам помочь. – Taterhead

+0

Получение данных из базы данных? – devpro

+0

Данные @devpro извлекаются и сохраняются в $ data как есть. – user007

ответ

0

Попробуйте это:

<?php 

$data= "750ML XYZ,750ML ABC|280,30|60,20|16800,600|12.25,25.25|205800,15150"; 

$array = explode("|", $data); 

$final = array(); 

foreach($array as $a) { 
    $row = explode(",", $a); 
    $final["first"][] = $row[0]; 
    $final["second"][] = $row[1]; 
} 
?> 
<table> 
    <thead> 
     <th>Goods</th> 
     <th>Pkg</th> 
     <th>Avg</th> 
     <th>Qty</th> 
     <th>Rate</th> 
     <th>Total</th> 
    </thead> 
    <tbody> 
     <?php foreach($final as $f) { ?> 
      <tr> 
       <?php foreach($f as $v){ ?> 
        <td><?php echo $v; ?></td> 
       <?php } ?> 
      </tr> 
     <?php } ?> 
    </tbody> 
</table> 

Надеется, что это помогает.

+0

Спасибо большое. Он работает. – user007

+0

еще одно сомнение, если в массив строк много значений, тогда как это должно быть назначено. Возможны значения $ row [$ n]. – user007

+0

В этом случае вы можете запустить вложенный цикл foreach внутри этого. –