У меня есть команда PHP shell_exec, которая выводит 5 строк данных для каждого результата, если shell_exec
имеет 1 результат, она выведет 5 строк примерно так:
john
richmond
27
london
dogs
Команда может иметь более1 результат, вот пример 3-х результатов:
john
richmond
27
london
dogs
dave
archibold
34
new york
cats
harry
harris
33
dublin
fish
Как видно, у каждого результата есть 5 строк: имя, фамилия, возраст, город и домашнее животное.Я хочу создать HTML-таблицу с результатами, однако, так как количество результатов может быть разным каждый раз, и они должны быть сгруппированы в 5, я не уверен, как добиться этого.Это желаемый вывод HTML:
| Name | Surname | Age | City | Pet |
--------------------------------------------------
| john | richmond | 27 | london | dogs cat |
| dave | archibold | 34 | newyork | cats cow |
| harry | harris | 33 | dublin | fish horse |
Из моего собственного исследования я думаю, что мне, возможно, придется использовать php explode
и создать массив, я пришел к следующему, однако не уверен, как реализоватьforeach и что еще мне нужно, чтобы он работал:
<div class="table-responsive">
<?php
$str = shell_exec( "shell command" );
$arr = explode(PHP_EOL, $str);
$arr = array_chunk($arr,5);
foreach *
?>
<table>
<thead>
<tr>
<th>Name</th>
<th>Surname</th>
<th>Age</th>
<th>City</th>
<th>Pet</th>
</tr>
</thead>
<tbody>
<?php foreach(*) { ?>
<tr class="1">
<td class="1">
<i class="cc <?php echo $name;?></i>
</td>
<td class="1">
<i class="cc <?php echo $surname;?></i>
</td>
<td class="1">
<i class="cc <?php echo $age;?></i>
</td>
<td class="1">
<i class="cc <?php echo $city;?></i>
</td>
<td class="1">
<i class="cc <?php echo $pet;?></i>
</td>
</tr>
</tbody>
</table>
</div>