Задать вопрос
  • Как в YII2 конвертировать string в html при передаче кода виджета во view?

    ANTVirGEO
    @ANTVirGEO Автор вопроса
    spoiler
    private function getChildsForView($child){
            $this->c++;
            foreach($child as $k => $v){
                $this->list .= '<div class="panel panel-default">';
                    $this->list .= '<div class="panel-heading tick" role="tab" id="heading' . $this->c . '" style="cursor: pointer" data-toggle="collapse" data-parent="#accordion" href="#collapse' . $this->c . '" aria-controls="collapse' . $this->c . '">';
                        $this->list .= '<h4 class="panel-title">';
                            $this->list .= '<img align="middle" id="greentick" src="../images/greenTick.png" class="greenTick" style="display: none">';
                            $this->list .= $v['name'];
                            if(isset($v['child']) && count($v['child']) > 0) $this->list .= ' ' . Html::badge(count($v['child']));
                        $this->list .= '</h4>';
                    $this->list .= '</div>';
                    if(isset($v['child']) && count($v['child']) > 0){
                        $this->list .= '<div id="collapse' . $this->c . '" class="panel-collapse collapse out" role="tabpanel" aria-labelledby="heading' . $this->c . '">';
                            $this->list .= '<div>';
                                $this->list .= '<ul>';
                                    foreach($v['child'] as $kk => $vv){
                                        $this->list .= '<li>';
                                        $this->list .= self::getChildsForView($v['child']);
                                        $this->list .= '</li>';
                                    }
                                $this->list .= '</ul>';
                            $this->list .= '</div>';
                        $this->list .= '</div>';
                    }
                $this->list .= '</div>';
            }
        }

    Вот как-то так выглядит итоговый генератор (к комментарии к первому ответу)
    Ответ написан