private function buildTree($rows, $parent_id = 0)
    {
        $containerAttributes = '';

        if (!$this->containerOptionsIsSet) {
            $containerAttributes = Html::renderTagAttributes($this->containerOptions);
            $this->containerOptionsIsSet = true;
        }

        $result = "<ul$containerAttributes>";

        foreach ($rows as $row) {
            if ($row['parent_id'] == $parent_id) {

                $value = call_user_func_array($this->value, ['model' => $row['model']]);
                $result .= "<li>$value";

                if ($this->hasChild($rows, $row['id'])) {
                    $result.= $this->buildTree($rows, $row['id']);
                }

                $result .= '</li>';
            }
        }

        $result .= '</ul>';

        return $result;
    }
private function buildTree($rows, $parent_id = 0)
    {
        $containerAttributes = '';

        if (!$this->containerOptionsIsSet) {
            $containerAttributes = Html::renderTagAttributes($this->containerOptions);
            $this->containerOptionsIsSet = true;
        }

        $result = "<ul$containerAttributes>";

        foreach ($rows as $row) {
            if ($row['parent_id'] == $parent_id) {

                $value = call_user_func_array($this->value, ['model' => $row['model']]);
                $result .= "<li>$value";

                if ($this->hasChild($rows, $row['id'])) {
                    $result.= $this->buildTree($rows, $row['id']);
                }

                $result .= '</li>';
            }
        }

        $result .= '</ul>';

        return $result;
    }
private function buildTree ( $ rows , $ parent_id = 0 ) { $ containerAttributes = '' ; if ( ! $ this -> containerOptionsIsSet ) { $ containerAttributes = Html :: renderTagAttributes ( $ this -> containerOptions ) ; $ this -> containerOptionsIsSet = true ; } $ result = "<ul$containerAttributes>" ; foreach ( $ rows as $ row ) { if ( $ row [ 'parent_id' ] == $ parent_id ) { $ value = call_user_func_array ( $ this -> value , [ 'model' => $ row [ 'model' ] ] ) ; $ result .= "<li>$value" ; if ( $ this -> hasChild ( $ rows , $ row [ 'id' ] ) ) { $ result .= $ this -> buildTree ( $ rows , $ row [ 'id' ] ) ; } $ result .= '</li>' ; } } $ result .= '</ul>' ; return $ result ; }
Create tree.
@param array $rows
@param int $parent_id
@return string tree
Create tree .