現在、私はPHP3レベルの配列を持っています。表形式で表示するにはどうすればよいですか?print_rを使用すると、配列全体を表示できますが、表形式で表示するには、配列を美しくする必要があります。出来ますか?
挿入される配列のサンプルは、別の投稿に示されているとおりです。ネストされた配列を使用したPHP foreach?
現在、私はPHP3レベルの配列を持っています。表形式で表示するにはどうすればよいですか?print_rを使用すると、配列全体を表示できますが、表形式で表示するには、配列を美しくする必要があります。出来ますか?
挿入される配列のサンプルは、別の投稿に示されているとおりです。ネストされた配列を使用したPHP foreach?
だから...配列の各レベルは埋め込みテーブルでなければなりませんか?
<table>
<?php // FIRST LEVEL
foreach ($myArray as $first_level): ?>
<tr>
<td>The header of the first level, here's some data <?php echo $first_level['some_data']; ?></td>
</tr>
<tr>
<td>
<table>
<?php // SECOND LEVEL
foreach($first_level['second_level'] as $second_level): ?>
<tr>
<td><?php echo $second_level['some_data']; ?></td>
</tr>
<?php endforeach; ?>
</table>
</td>
</tr>
<?php endforeach; ?>
</table>
..そしてパターンを繰り返し続ける
出力形式のテンプレートを提供しなかったため、それを行う方法はたくさんあります....入力配列の各要素がテーブルの1行を表す
と仮定しましょう。
$e[0] は文字列要素 ( 、、) であり、$e[1] は対応する配列、またはです。$e[0] を要素
に入れましょう。$e
$src
one
two
three
1,2,3
4,5,6
7,8,9
<th>...</th>
foreach( $src as $e ) {
echo '<th>', $e[0], '</th>';
}
次に、各要素を $e[1] in でラップし<td>....</td>
ます。
foreach( $src as $e ) {
echo '<th>', $e[0], '</th>';
foreach($e[1] as $v) {
echo '<td>', $v, '</td>';
}
}
それを別のものにラップ<tr>...</tr>
すれば完了です
foreach( $src as $e ) {
echo '<tr>';
echo '<th>', $e[0], '</th>';
foreach($e[1] as $v) {
echo '<td>', $v, '</td>';
}
echo "</tr>\r\n";
}
同じことを少し短くします ( http://docs.php.net/joinを参照)
<?php
$src = getData();
foreach( $src as $e ) {
echo '<tr><th>', $e[0], '</th><td>', join('</td><td>', $e[1]), "</td></tr>\n";
}
function getData() {
return array(
array( 'one', array(1,2,3) ),
array( 'two', array(4,5,6) ),
array( 'three', array(7,8,9) )
);
}
出力は
<tr><th>one</th><td>1</td><td>2</td><td>3</td></tr>
<tr><th>two</th><td>4</td><td>5</td><td>6</td></tr>
<tr><th>three</th><td>7</td><td>8</td><td>9</td></tr>