View
in package
implements
Stringable
Класс для работы с шаблонами представлений.
Реализует систему шаблонов с поддержкой наследования, секций и компиляторов. Поддерживает интерфейс Stringable для автоматического преобразования в строку.
Table of Contents
Interfaces
- Stringable
Properties
- $compilers : array<string|int, mixed>
- $currentSection : string
- $data : array<string|int, mixed>
- $extendedTemplate : string|null
- $sections : array<string|int, mixed>
- $template : string
- $viewsPath : string
Methods
- __construct() : mixed
- Конструктор представления.
- __get() : mixed
- Магический метод для получения данных шаблона.
- __set() : void
- Магический метод для установки данных шаблона.
- __toString() : string
- Преобразует представление в строку (реализация Stringable).
- addCompiler() : void
- Добавляет компилятор шаблонов.
- endSection() : void
- Завершает текущую секцию контента.
- extends() : void
- Устанавливает родительский шаблон для наследования.
- render() : string
- Рендерит шаблон и возвращает результат.
- section() : void
- Начинает новую секцию контента.
- setViewsPath() : void
- Устанавливает путь к директории с шаблонами.
- yeld() : string
- Выводит содержимое секции.
- renderExtendedTemplate() : string
- Рендерит родительский шаблон с подставленными секциями.
Properties
$compilers
private
static array<string|int, mixed>
$compilers
= []
Массив зарегистрированных компиляторов шаблонов
$currentSection
private
string
$currentSection
= ''
Текущая активная секция
$data
private
array<string|int, mixed>
$data
Данные для передачи в шаблон
$extendedTemplate
private
string|null
$extendedTemplate
= null
Родительский шаблон для наследования
$sections
private
array<string|int, mixed>
$sections
= []
Секции контента
$template
private
string
$template
Имя текущего шаблона
$viewsPath
private
static string
$viewsPath
= 'app/views'
Путь к директории с шаблонами
Methods
__construct()
Конструктор представления.
public
__construct(string $template[, array<string|int, mixed> $data = [] ]) : mixed
Parameters
- $template : string
-
Имя шаблона (без расширения)
- $data : array<string|int, mixed> = []
-
Данные для передачи в шаблон
__get()
Магический метод для получения данных шаблона.
public
__get(string $name) : mixed
Parameters
- $name : string
-
Имя переменной
Return values
mixed —Значение переменной или null если не существует
__set()
Магический метод для установки данных шаблона.
public
__set(string $name, mixed $value) : void
Parameters
- $name : string
-
Имя переменной
- $value : mixed
-
Значение переменной
__toString()
Преобразует представление в строку (реализация Stringable).
public
__toString() : string
Return values
string —Результат рендеринга шаблона
addCompiler()
Добавляет компилятор шаблонов.
public
static addCompiler(ViewCompilerInterface $compiler) : void
Parameters
- $compiler : ViewCompilerInterface
-
Компилятор шаблонов
endSection()
Завершает текущую секцию контента.
public
endSection() : void
extends()
Устанавливает родительский шаблон для наследования.
public
extends(string $template) : void
Parameters
- $template : string
-
Имя родительского шаблона
render()
Рендерит шаблон и возвращает результат.
public
render() : string
Tags
Return values
string —Результат рендеринга
section()
Начинает новую секцию контента.
public
section(string $name) : void
Parameters
- $name : string
-
Имя секции
setViewsPath()
Устанавливает путь к директории с шаблонами.
public
static setViewsPath(string $path) : void
Parameters
- $path : string
-
Путь к директории
yeld()
Выводит содержимое секции.
public
yeld(string $name) : string
Parameters
- $name : string
-
Имя секции
Return values
string —Содержимое секции или пустая строка
renderExtendedTemplate()
Рендерит родительский шаблон с подставленными секциями.
private
renderExtendedTemplate() : string
Tags
Return values
string —Результат рендеринга