Multi-Array tuşlar dayalı Rowspans ve Colspans içinde hesaplayın

1 Cevap php

Tamam, ben düzenleri bu 2 tip var, temelde, gerçekten herhangi bir düzen olabilir. Ben bazı olası düzen türlerinde istenmeyen sonuçlara neden div etiketlerini kullanarak beri, bu tablolar için kullanmaya karar verdim.

Here are 2 pics that describe the returned results of row and column: alt text

Bu çok gibi $ düzeni dizi dönecekti:

$layout[0][0]
$layout[0][1]
$layout[1][1]

Bu düzen tür: $layout[1][0] SET DEĞİL, ya da yok. Satır 1, Sütun 0 burada yok. Peki ... bize rowspans belirlemek için kullanabilir?

alt text

Tamam, bu düzen tür şimdi aşağıdaki dönecekti:

$layout[0][0]
$layout[0][1]
$layout[1][0]
$layout[2][0]
$layout[2][1]
$layout[3][1]

Yine, burada SET DEĞİLDİR bazı vardır:

$layout[1][1]
$layout[3][0]

Tamam, satır ve sütunda bir foreach yapar bir dizi denir $ düzen var, ama SET DEĞİLDİR satırlar ve sütunlar kapmak değil. Yani (orada ve orada kaç sütun kaç satır doğru sayıları ile) için döngü yarattı. İşte ben bugüne kadar ne var:

// $not_set = array();
for($x = 0; $x < $cols; $x++)
{
    $f = 0;
    for($p = 0; $p < $rows; $p++)
    {
        // $f = count($layout[$p]); 
        if(!isset($layout[$p][$x]))
        {
            $f++;
            // It could be a rowspan or a Colspan...
            // We need to figure out which 1 it is!

            /*
            $not_set[] = array(
                'row' => $p,
                'column' => $x,
            );
            */
        }

        // if ($rows - count($layout[$p]))

    }
}

Ok, the $layout array has 2 keys. The first 1 is [ row ] and the 2nd key is [ column ]. Now looping through them all and determining whether it's NOT SET, tells me that either a rowspan or a colspan needs to be put into something somewhere. I'm completely lost here.

Temelde, bir dizi, burada böyle bir şey iade istiyorum:

$spans['row'][ row # ][ column # ] = Number of rowspans for that <td> element.
$spans['column'][ row # ][ column # ] = Number of colspans for that <td> element.

Ya bir colspan ya da bir rowspan ihtiyacı olacak, kesinlikle aynı eleman için hem gerek asla. Ayrıca, sadece 2 sütun için gösteri yukarıdaki resimler, fazla 2 sütun olabilir.

Tüm herhangi bir yardım büyük mutluluk duyacağız! Ben gün boyunca bu ile deli kendimi sürüş oldum! Pllleaase ...

1 Cevap

Neden colspan saklamak & değil yerine bunları elde etmek için çalışırken daha orijinal dizisinde rowspan sıfır noktası? Böyle bir şey:

$layout[0][0][1][1]
$layout[0][1][1][1]
$layout[1][0][2][1]
$layout[2][0][1][2]
$layout[2][1][1][1]
$layout[3][1][1][1]