для моего проекта - в конце процесса создается форма. В моей старой системе это была комбинация Regex + HTML (которую я узнал, не очень приятно поддерживать:))
Итак, я пошел и провел некоторое исследование, но я не могу найти шаблонный движок, который мне нужен. Я следил за Twig & Smarty , но я хочу, чтобы движок мог перебирать пользовательские теги, которые, в свою очередь, вызывают функцию до retrieve данные, которые читаются из источника (в основном функция обратного вызова) . Поскольку существует огромный массив данных, и он может быть разных форматов, в зависимости от того, как пользователь хочет его отобразить.
Я также хотел бы включить , если и , еще , условия
Надеюсь, я достаточно ясно.
Я приведу очень простой пример кода из моей системы шаблонов
<html>
<body>
<table>
<tr>
<td>
Building
</td>
<td>
<mi:seperated seperator=", " source="building" key="type" />
</td>
</tr>
<tr>
<td>
Construction
</td>
<td>
<mi:seperated seperator=", " source="house" key="construction" default="N/A" />
</td>
</tr>
<tr>
<td>
Floor
</td>
<td>
<mi:value source="house" key="floor" default="N/A" />
</td>
</tr>
</table>
</body>
</html>
и конечный результат будет выглядеть следующим образом.
<html>
<body>
<table>
<tr>
<td>
Building
</td>
<td>
Double Storey, Domestic dwelling
</td>
</tr>
<tr>
<td>
Construction
</td>
<td>
6 Bedrooms, Brick Veneer
</td>
</tr>
<tr>
<td>
Floor
</td>
<td>
N/A
</td>
</tr>
</table>
</body>
</html>
Эти шаблоны форм могут быть изменены любым пользователем. Поэтому я не хочу идти по пути «PHP является языком шаблонов», если, конечно, нет простого способа ограничить то, какой код выполняется.
edit: также просто заметка. функция обратного вызова предназначена для обработки вывода HTML (поскольку некоторые теги могут создавать сложный вывод)