Это вопрос о методологии и предлагаемых практиках. Я знаю, что он не привязан строго к фреймворку и даже не к PHP, и ответ может быть «это зависит от вас». Но я беспокоюсь о лучших практиках и методологии, поскольку обычно существует лучший подход для определенного контекста.
Я хотел бы знать, как лучше всего использовать именование клавиш для функции trans()
в Laravel 5.1?
Учитывая, что встроенные переводы Laravel хранятся в массиве, меня беспокоит то, какая иерархия позволяет мне достичь следующих целей:
согласованность: поэтому я минимизирую возможность использования разных слов для одного и того же значения или создания множества разных ключей, которые в конечном итоге будут иметь одинаковый перевод (например, обычные слова).
Повторное использование: поэтому я минимизирую общий размер файлов перевода и перевожу как можно меньше, сохраняя при этом гибкость.
читабельность. Таким образом, переводчики могут определить назначение ключа даже при отсутствии значения перевода.
организация: чтобы разработчик мог легко запомнить полный путь к ключу и свести к минимуму проверку файлов перевода каждый раз.
В качестве примера предположим, что я хочу назвать успешное оповещение об обновлении модели пользователя для профиля управления. Возможные подходы:
trans('manager.user.update.alert.sucess')
trans('alerts.success.manager.user.update')
trans('manager.user.alert.update.success')
trans('alert.the_user_was_updated_successfully')
Обновить
К ноябрю 2016 года похоже, что Laravel 5.4 представляет механизм перевода на основе JSON. это может упростить файлы перевода. Тем не менее, забота об умной файловой структуре и хорошо организованных текстах является плюсом.