Yaml Form Generator -- простое и быстро создание форм для PHP

В прошлом году, работая над одним проектом, задумался, сколько же времени уходит на то, чтобы сделать качественные формы: нужно сверстать форму на HTML, сделать валидацию формы на стороне клиента, а потом и на стороне сервера, а для некоторых типов данных выполнить еще ряд действий: преобразовать дату в Unix Timestamp и обратно, обработать ситуацию "снятый checkbox", проверить, что злоумышленник не добавил каких-то своих полей. Поскольку все эти действия весьма рутинны, и я задумался над тем, можно ли их как-то автоматизировать, причем так, чтобы форма целиком и полностью описывалась в одном месте.


Сначала рассматривал вариант описания форм на XML, но писать каждый раз множество открывающих и закрывающих тегов с необходимостью контроля их вложенности выглядело не самым лучшим решением. Тогда я вспомнил о языке YAML, с которым сталкивался когда-то и в котором основной способ задания структуры данных — это отступы и фигурные скобки, и решил, что это наилучшим образом подходит для  простого и быстрого описания полей формы. Дальше оставалось только написать класс, который реализует два метода: первый из них генерировал по YAML-описанию HTML-форму, а второй — по тому же самому описанию выполняет валидацию полученных от пользователя полей. Потом к этому добавил еще небольшой JavaScript для валидации на клиентской стороне, и в итоге получил решение, которое я назвал Yaml Form Generator.

Изначально я собирался сделать для него отдельный сайт, но сейчас решил поступить иначе, и создал раздел Yaml Form Generator на форуме другой, более крупной моей разработки (Intellect Board). Там можно скачать Yaml Form Generator и ознакомиться с примерами его использования