[PHP-users 30334] Re: テンプレート 複数行表示

TANAKA Masayuki tanakamasayuki @ gmail.com
2006年 9月 17日 (日) 19:47:54 JST


こんにちは田中です

PHPのテンプレートは複数あるので、どのテンプレートか
記述したほうがいいと思いますよ

> $count= 0 ;
> for($col=1; $col<$kotae; $col++) {
>     $tswn = $col % $lenatwa;
>         if($tswn == 0){
>                 $count++;
>         }
>     //カウンタ設定
>     $arg["counter"][$count]["countercon"][$col-1] = $col * $lenasle;
> }

プログラムの内容はよく見えないのですが、$col-1の辺が行が変わっても
リセットしていないように思えます

$count= 0 ;
$col_ct = 0;
for($col=1; $col<$kotae; $col++) {
    $tswn = $col % $lenatwa;
        if($tswn == 0){
                $count++;
                $col_ct = 0;
        }
    //カウンタ設定
    $arg["counter"][$count]["countercon"][$col_ct] = $col * $lenasle;
    $col_ct++;
}

row と col はカウントするよりは、毎回計算で出す方が一般的だとは
思いますが、以下のような形の方が一見しての理解はしやすいと思います

$max = $record["count"];
if( $max < $lenasle )
{
  // 最低カウンタ数だけは実行
  $max = $lenasle;
}
$row = 0;
$col = 0;
// 10 からカウント数まで10ステップでループ
for( $i=$lenasle; $i<=$max; $i += $lenasle )
{
    //カウンタ設定
    $arg["counter"][$row]["countercon"][$col] = $i;
    $col++;

    $tswn = $i % ( $lenasle * $lenatwa );
    if($tswn == 0)
    {
        // 200であまりなしだと次の行へ
        $row++;
        $col = 0;
    }
}

未検証のプログラムなので、イメージだけつかんでいただければと
思います

田中


PHP-users メーリングリストの案内