Фреймы нужны для того, чтобы данные которые выводятся на экран, можно было поместить в переменную и в дальнейшем работать с данными которые выводились.
Пример создания простого фрейма в шаблоне проекта
/php $frame = new PrFrame('my-text'); php/
Hello, World!
/php $frame -> set(); php/
Hello, World! - не выведется на экран, этот текст поместился во фрейм my-text
Выводим строку:
/php=$frame -> get();php/
Пример создания сложного фрейма в контроллере или компоненте проекта
/php
$frame = new PrFrame('form');
$frame -> load('/Project/components/form/template.php', [
'name' => 'Form',
'text' => 'MyForm']) -> set();
php/
Создали сложный фрейм, в котором данные подгружаются из /Project/components/form/template.php
В метод load() вторым аргументом передается массив имяПеременной=>значениеПеременной
В файле /Project/components/form/template.php доступны переменные $name со значением Form и $text со значением MyForm
Если фрейм описывается в контроллере или компоненте, то получить его содержимое можно через метод get(), а так же вывести во view {имяФрейма} в данном случае