Rastishka
@Rastishka

Какие naming convention (camelCase vs snake_case) для колонок принято применять при СОВМЕСТНОМ использовании PHP и SQL?

Есть рекомендации что колонки в SQL принято называть в snake_case, а переменные у классов PHP в camelCase.

Но при совместном использовании в ORM моделей возникает неконсистентный код, когда поле проброшенное из SQL в PHP коде выглядит как $someModel->snake_case, то есть в результате соблюдения обоих правил получается черти что.

Есть варианты:
1) и названия колонок SQL и переменных PHP называть в camelCase
2) и названия колонок SQL и переменных PHP называть в snake_case
3) SQL в snake_case, PHP в camelCase, добавлять в модельки сеттеры/геттеры для преобразования туда/сюда (laravel eloquent позволяет это делать из коробки, но все равно костыль какойто, при написании raw запроса опять snake_case всплывает)
4) забить на неконсистентность, даешь смешение стилей!
5) другое

Какой вариант правильнее использовать и почему?

Сделал голосовалку: https://docs.google.com/forms/d/e/1FAIpQLSdK17-sDL...
  • Вопрос задан
  • 384 просмотра
Пригласить эксперта
Ответы на вопрос 1
miraage
@miraage
Старый прогер
3. snake_case_sql, camelCasePhp. У нормальных ORM есть что-то вроде namingStrategy, который всю работу за Вас делает.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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