Loomis
Mitglied Bunt
Zuerstmal etwas Code.
$data ist nun ein schönes foreach-taugliches Array für mein HTML-Template. Was auch gut funktioniert, bisher.
Folgendes Template möchte ich gerne mit Daten füllen (die <table>-Tags sind dazu da um es besser zu veranschaulichen, ich Layoute natürlich ohne Tabellen!):
Dazu habe ich mir von array_slice viel erhofft. So weit bin ich bisher:
Scheint zu funktionieren, gefällt mir aber irgendwie nicht :/
Gibt es da eine schönere Lösung? Mir fällt nichts mehr ein.
PHP:
// Vorher Datenbankzeug...
$data = array();
while( $row = $result->fetch_assoc() )
{
array_push
(
$data,
array
(
'id' => $row['id'],
'name' => htmlentities ( $row['name'] )
)
);
}
Folgendes Template möchte ich gerne mit Daten füllen (die <table>-Tags sind dazu da um es besser zu veranschaulichen, ich Layoute natürlich ohne Tabellen!):
PHP:
<table>
<tr>
<td valign="top"> <!-- Linke Spalte -->
<table width="300" border="1">
<?php foreach( $data_1 AS $left ): ?>
<tr>
<td><?php echo $left['id']; ?></td>
<td><?php echo $left['name']; ?></td>
</tr>
<?php endforeach; ?>
</table>
</td>
<td valign="top"> <!-- Mittlere Spalte -->
<table width="300" border="1">
<?php foreach( $data_2 AS $middle ): ?>
<tr>
<td><?php echo $middle['id']; ?></td>
<td><?php echo $middle['name']; ?></td>
</tr>
<?php endforeach; ?>
</table>
</td>
<td valign="top"> <!-- Rechte Spalte -->
<table width="300" border="1">
<?php foreach( $data_3 AS $right ): ?>
<tr>
<td><?php echo $right['id']; ?></td>
<td><?php echo $right['name']; ?></td>
</tr>
<?php endforeach; ?>
</table>
</td>
</tr>
</table>
PHP:
$count = count( $data );
$data_1 = array_slice($data, 0, $count-$count/3*2 );
$data_2 = array_slice($data, $count-$count/3*2, $count-$count/3*2 );
$data_3 = array_slice($data, $count-$count/3 );
Gibt es da eine schönere Lösung? Mir fällt nichts mehr ein.
Zuletzt bearbeitet: