Шаблонизатор для таблиц?

Смысл таков: есть шаблоны документов, в которых нужно заменять поля. Одиночные поля заменяются просто «Привет, {username}», например. Но возник вопрос — что делать с табличными данными? Заменять таблицу одним полем нельзя. Вкратце нужно иметь возможность менять поля таблицы в шаблоне (и их порядок естественно), и желательно стили оформления. Кроме того, не должно быть PHP кода внутри шаблона, то есть шаблон должен легко редактироваться тетей Зиной из бухгалтерии :)

Не хочется изобретать свой велосипед, но навскидку ничего подходящего не нашел.
  • Вопрос задан
  • 5089 просмотров
Пригласить эксперта
Ответы на вопрос 3
Gibbzy
@Gibbzy
Что то мне кажется что стандартных решений, нет, я по крайней мере не припомню.
Я бы на вашем месте взял какой нибудь smarty или twig и написал плагин для таблиц.
Что-нибудь типа
[table name=«test», fields=['id','name','surname'] ]
Ответ написан
@rowdyro
В последнее время пользуюсь мегафоновским Histone. Очень удобно, тк полная совместимость шаблонов PHP-JS.

Привет, {{username}}! <table> {{for item in items}} <tr><td>{{item.name}}</td><td>{{item.value}}</td></tr> </table>
Ответ написан
Evengard
@Evengard
Как известно, PHP позволяет отсылать в POST-запросах мультиуровневые массивы. Собственно, вполне возможно сгенерить такие вот поля-массивы и для таблицы. Единственный вменяемый вариант который я вижу.

Типа так:
<table>
<tr>
<td><input type="text" name="table[0][0]" /></td>
<td><input type="text" name="table[0][1]" /></td>
</tr>
<tr>
<td><input type="text" name="table[1][0]" /></td>
<td><input type="text" name="table[1][1]" /></td>
</tr>
<?php
var_dump($_POST['table']);
?>
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы