?

Log in

No account? Create an account
Main

Инфлектор для PHP

Хороший класс инфлектора (переводит из ед. числа во множественное и наоборот, разбирает подчеркнутые_слова и верблюжийСинтаксис на фразы).

Порт из рельс для фреймворка акелос:
http://www.zend.com//code/codex.php?ozid=1564&single=1

Удобен для работы с MVC и Active record.

Comments

Я правильно понимаю, что оно в основном надо для автоматической генерации чего-то-там (админок, форм, БД и т.д.)? То есть это некая вспомогательная оснастка. Так как завязываться на такое решение при разработке приложения — значит тут же лишать приложение возможности интернационализации.
ну не совсем, просто в Rails например по умолчанию к примеру пишешь название модели в единственном числе, а механиз понимает, что искать надо будет в таблице с множественным числом. Вот этот класс делает всякие склонения и т.п.
Потому как в многих PHP вреймворках тоже стало можно писать в Rails стиле

$administrators = User::find_by_role('admin');
Это не для генережки лейблов. Это чтобы генерируемые классы, методы, файлы назвались логично. Таблица -- во множ числе, урл для списка объектов -- во множ числе, урл для показа-правки объекта в ед числе и для подобных дел. Можно забить и писать всюду в се в ед числе, но это не красиво.

в общем это нужно для красоты сгенеренного кода, а его получается много.

Т.е. правильно, однако я не очень понял про завязывание на решение при разработке. Тут не лейблы генерятся, а внутренний язык предметной области. И обычно он английский :) И хочется, чтобы было красиво и аккуратно.
Да, я именно про лейблы. Хотел было набросить, что мол существует конвенция именования таблиц БД, когда имя таблицы равно имени сущности в ед. ч., и тогда все эти танцы со склонениями не нужны. Но пример с урлами выглядит как-то более убедительно.