Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)

Diskuze: Získání posloupnosti ve stromu

PHP PHP Získání posloupnosti ve stromu American English version English version

Aktivity (1)
Avatar
IT Man
Redaktor
Avatar
IT Man:13.5.2016 18:43

Ahoj,
potřeboval bych od Vás pomoci. Mám nějaký takovýhle strom položek:

Array(
    [1] => Array(
        // Nějaká data
        // ...
        ['sub'] => Array(
            [2] => Array(
                // Další data
                // ...
                ['sub'] => Array
                    (
                    )
            )
            [3] => Array(
                // Data
                // ...
                ['sub'] => Array
                    (
                    )
            )
        )
    )
)

Následně ho zpracovávám takhle:

public function getWay($tree, $needle)
{
    $way = '';

    foreach ($tree as $item)
    {
        if ($item['data'] == $needle)
            return $way . $item['data'];
        $way = $item['data'] . $this->getWay($item['sub'], $needle);
    }
    return $way;
}

Problém je v tom, že pokud při poli s klíčem 3 je to teprve až nalezeno, zůstane tam i věc z klíče 2. U klíče 4 tam zůstane zase jenom klíč 3 (a samozřejmě věc z pole s klíčem 1).
Jak by se tedy efektivně dala získat posloupnost pouze s věcí z pole s klíčem 1 a spolu s tím věc z pole s klíčem 3? Předem děkuji za pomoc.

Odpovědět 13.5.2016 18:43
Cokoliv a kdokoliv může jednou uspět.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.