0

小さな Web サイトの管理ページを作成しようとしています。私の計画は、個々のセルに関連データを入れて各ユーザーのテーブルを作成することです。

ここに私のコードがあります:

foreach ($user_data as $key => $element)
{
    echo <<<EOT
<div><table border="1" style="width:100%">
EOT;
        foreach ($element as $subkey => $sub_element)
        {
            echo <<<EOT
<td>$sub_element</td>
EOT;
        }
        echo <<<EOT
</table></div>
EOT;

問題は、各テーブルのセルの長さが異なるため、データが列見出しの下にきれいに並べられないことです (ここには示されていません)。幅の変数を使用して、各セルを異なるが特定の長さにする方法 (CSS を使用しますか?) があるかどうか疑問に思っています。カウンターを使用して、作成されているセルを追跡し、カウンター内の各数値に異なる幅を使用できると考えています (つまり、データと共にループされる 5 つの異なる長さの配列)。

私はこれに正しい方法でアプローチしていますか?

4

1 に答える 1

0

以下は私が思いついた解決策です。これはベストプラクティスですか?もっと良い方法はありますか?

<?php
$cell_width = array('20%','10%','10%','10%', '5%', '10%','25%','10%');

foreach ($user_data as $key => $element)
{
    $counter = 0;
    echo <<<EOT
<br /><div><table style="width:100%">
EOT;
    foreach ($element as $subkey => $sub_element)
    {
        echo <<<EOT
<td width=$cell_width[$counter]>$sub_element</td>
EOT;
        $counter++;
    }
    echo <<<EOT
</table></div>
EOT;
}
?>
于 2013-03-05T19:02:25.947 に答える