Я хочу напечатать многомерный массив в таблице, используя только цикл «Только для цикла». Это $myArray
$myArray = Array( [0] => Array ( [0] => 598 [1] => Introducing abc [2] => ) [1] => Array ( [0] => 596 [1] => Big Things Happening at abc [2] => ) [2] => Array ( [0] => 595 [1] => Should I send abc? [2] => ) [3] => Array ( [0] => 586 [1] => Things you need to know about abc :P [2] => )
);
обновить новый массив как var_dump($myArray );
Есть тонна различных подходов к этому, так почему бы не повеселиться.
Не знаю, почему бы вам, если только для школьного задания:
for($i=0;$i<count($data);$i++) { echo('<tr>'); echo('<td>' . $data[$i][0] . '</td>'); echo('<td>' . $data[$i][1] . '</td>'); echo('<td>' . $data[$i][2] . '</td>'); echo('</tr>'); }
-for($i=0;$i<count($data);$i++) { echo('<tr>'); echo('<td>' . $data[$i][0] . '</td>'); echo('<td>' . $data[$i][1] . '</td>'); echo('<td>' . $data[$i][2] . '</td>'); echo('</tr>'); }
Но тогда это просто глупо, напрямую обращаясь к идентификаторам, позволяет использовать другой цикл в строке:
for($i=0;$i<count($data);$i++) { echo('<tr>'); for($j=0;$j<count($data[$i]);$j++) { echo('<td>' . $data[$i][$j] . '</td>'); } echo('</tr>'); }
-for($i=0;$i<count($data);$i++) { echo('<tr>'); for($j=0;$j<count($data[$i]);$j++) { echo('<td>' . $data[$i][$j] . '</td>'); } echo('</tr>'); }
<table> <?php foreach($items as $row) { echo('<tr>'); foreach($row as $cell) { echo('<td>' . $cell . '</td>'); } echo('</tr>'); } ?> </table>
-<table> <?php foreach($items as $row) { echo('<tr>'); foreach($row as $cell) { echo('<td>' . $cell . '</td>'); } echo('</tr>'); } ?> </table>
<table> <?php foreach($items as $row) { echo('<tr>'); echo('<td>'); echo(implode('</td><td>', $row); echo('</td>'); echo('</tr>'); } ?> </table>
-<table> <?php foreach($items as $row) { echo('<tr>'); echo('<td>'); echo(implode('</td><td>', $row); echo('</td>'); echo('</tr>'); } ?> </table>
<?php function print_row(&$item) { echo('<tr>'); echo('<td>'); echo(implode('</td><td>', $item); echo('</td>'); echo('</tr>'); } ?> <table> <?php array_walk($data, 'print_row');?> </table>
-<?php function print_row(&$item) { echo('<tr>'); echo('<td>'); echo(implode('</td><td>', $item); echo('</td>'); echo('</tr>'); } ?> <table> <?php array_walk($data, 'print_row');?> </table>
Да, сейчас это выглядит немного глупо, но когда вы вырастите стол, и все становится более сложным, все немного лучше разрастается и модулируется:
<?php function print_row(&$item) { echo('<tr>'); array_walk($item, 'print_cell'); echo('</tr>'); } function print_cell(&$item) { echo('<td>'); echo($item); echo('</td>'); } ?> <table> <?php array_walk($data, 'print_row');?> </table>
-<?php function print_row(&$item) { echo('<tr>'); array_walk($item, 'print_cell'); echo('</tr>'); } function print_cell(&$item) { echo('<td>'); echo($item); echo('</td>'); } ?> <table> <?php array_walk($data, 'print_row');?> </table>
Используйте это, на самом деле два вложенных for
цикла:
print('<table>'); for($i = 0; $i < count($array); $i++) { print('<tr>'); for($ii = 0; $ii < count($array[$i]); $ii++) { print("<td>{$array[$i][$ii]}</td>"); } print('</tr>'); } print('</table>');
Сделайте так
echo "<table>"; for($i=0;$i<count($your_array);$i++) { echo "<tr><td>".$your_array[$i][0]."</td>"; echo "<td>".$your_array[$i][1]."</td>"; echo "<td>".$your_array[$i][2]."</td></tr>"; } echo "</table>";
echo '<table>'; for($i=0;$i<count($array);$i++) { echo '<tr><td>'.$array[$i][0].'</td>'; echo '<tr><td>'.$array[$i][1].'</td>'; echo '<tr><td>'.$array[$i][2].'</td></tr>'; } echo '</table>';
Сделай это
$arr as your array
тогда
echo "<table>"; for($i = 0; $i<count($arr); $i++) { echo '<tr><td>'.$arr[$i][0].'</td>'; echo '<tr><td>'.$arr[$i][1].'</td>'; echo '<tr><td>'.$arr[$i][2].'</td></tr>'; } echo "</table>";