2016-12-19 6 views
0

У меня есть выбор из списка элементов из таблицы, мне нужно добавить динамический rowspan в конце строки, если элемент от одного поставщика, но я понятия не имею, как с этим работать.PHP генерировать rowspan динамически

Я пробовал:

foreach($items as $item){ 

    /*get total num for rowspan*/ 
    $group = $buyer->get_total_rowspan($obj->id, $obj->supplier); 

    echo '<tr> 
      <td>$item->id</td> 
      <td>$item->name</td> 
      <td>$item->supplier</td>'; 

      if($group->countRow > 1){ 
      <td rowspan="$group->countRow"><a>Manage</a></td> 
      } 

     if($group->countRow > 1){ 
      echo '<td rowspan="'.$group->countRow.'"><a>manage</a></td>'; 
     }else{ 
      echo '<td><a>test</a></td>'; 
     } 

    echo '</tr>'; 
} 

но клетка Manage всегда будет появляться в каждой строке с форматом бардак.

идея приводит, что я хочу:

enter image description here

ответ

0

Вы можете попробовать что-то вроде этого:

$lastId = null; 
foreach($items as $item){ 

    /*get total num for rowspan*/ 
    $group = $buyer->get_total_rowspan($obj->id, $obj->supplier); 

    echo '<tr> 
      <td>$item->id</td> 
      <td>$item->name</td> 
      <td>$item->supplier</td>'; 

      if($lastId != $group->Id){ 
      <td rowspan="$group->countRow"><a>Manage</a></td> 
      } 

    echo '</tr>' 

    $lastId = $group->Id; 
} 

Everytime есть новая группа, которую вы можете установить $ я обратно в 0.

+0

Появляется только первая строка 'manage' –

+0

У вас есть личность для группы $ group? – Flo

+0

Да, я могу добавить 'id' –

Смежные вопросы