Codeigniter 4 включает еще один парсер в представление шаблона парсера

Я хочу создать библиотеку для создания динамического шаблона с использованием синтаксического анализатора codeigniter 4.0.3 с вставкой другого синтаксического анализатора в качестве переменной _content в шаблон с использованием синтаксического анализатора. Но результат _content просто показывает html-код. Это мой код библиотеки:

if(!empty($template)){ //$template is path vdashboard.php
    $this->data['_content']=$this->parser->setData($this->data)->render($template);
}else{
    $this->data['_content']=null;
} 
echo $this->parser->setData($this->data)->render('templates/vtemplates');

И это мой вид шаблона для добавления контента, я даю имя файла vtemplate.php:

<div class="row layout-top-spacing">

    {_content}
                
</div>

Например, я хочу загрузить представление с именем файла vdashboard.php и отправить его на vtemplate.php.

<h2>{welcome}</h2>

Результат <h2>Welcome</h2> не Welcome


person wahmal    schedule 05.07.2020    source источник


Ответы (1)


Сегодня я нахожу ответ. Это связано с тем, что синтаксический анализатор CI 4 Escapeing Data помогает предотвратить атаки XSS. Итак, вы должны распаковать переменную __content

Просто добавь ! между переменной:

{__content}

To :

{!__content!}
person wahmal    schedule 11.07.2020