- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Еще, кстати, аргумент пришел в голову. Как исходные данные: речь о php и используем модульность. В случае массива последовательность следующая. Где то в начале инициализируется массив (возможно пустой) скажем $dict. Далее подключается один или множество языковых файлов. Примерно такого содержания
Т.е. идет просто заполнение массива.
Если же будет храниться в json. То для каждого файла придется делать (в грубом варианте):
А на противоположной стороне весов
Обработка ошибок за скобками - т.к. она одинаковая
Мне кажется, что перевод для интерфейса в бд - это стрельба по воробьям из пушки (если не кэшировать их в оперативной памяти через мемкэшед. Но в этом случае лучше через массив в пхп файле и подключить опкэш).
Довольно странное заявление. Ты когда-нибудь заглядывал в код или в БД популярных CMS? Попробуй заглянуть. У них меню в базе данных. Либо генерится "на лету" в случае динамического контента (но это явно не случай ТС). Никакими файлами там и не пахнет. Правда, есть и исключения - Битрикс, например.
Хранение данных в БД - общепринятая практика. Для того и разрабатывались реляционные базы данных.
Довольно странное заявление. Ты когда-нибудь заглядывал в код или в БД популярных CMS? Попробуй заглянуть. У них меню в базе данных. Либо генерится "на лету" в случае динамического контента (но это явно не случай ТС). Никакими файлами там и не пахнет. Правда, есть и исключения - Битрикс, например.
Хранение данных в БД - общепринятая практика. Для того и разрабатывались реляционные базы данных.
Не стоит рассуждать о том, в чем не разбираешься. Приводить в пример то, как построены "популярные ЦМС" - показывать свою ограниченность. Они разработаны для массового пользователя, там цель - не максимальная скорость и гибкость, а дать юзеру с поверхностными знаниями возможность быстренько создать сайтик. Ты хоть раз делал профилирование запросов? Одно дело, когда на сайт заходит 5-10-20 тысяч пользователей почитать новости там пообщаться. И другое дело когда сидят постоянно такое количество и работают плотно с информацией. Все слезы тут на форуме - ой у меня все тормозит... Мой сервис будет работать на одноядерной машине с гигом оперативы быстрее на порядок, чем тот же вордпресс на 10-ти ядрах на 8 гигах оперативы при одинаковом количестве пользователей только за счет оптимизации работы с базой и с памятью. Твое мнение неинтересно абсолютно, предпочитаю общение с теми, у кого есть нормальный опыт.
Довольно странное заявление. Ты когда-нибудь заглядывал в код или в БД популярных CMS? Попробуй заглянуть. У них меню в базе данных. Либо генерится "на лету" в случае динамического контента (но это явно не случай ТС). Никакими файлами там и не пахнет. Правда, есть и исключения - Битрикс, например.
Хранение данных в БД - общепринятая практика. Для того и разрабатывались реляционные базы данных.
Никогда не пользовался разными CMS и не собираюсь. Зачем мне эти тормознутые монстры, да и все равно пришлось бы дорабатывать под свои проекты.
Еще в 2005 определился со своим движком, 2 или 3 раза переделывал только функциональность за все время (логика оставалась). Что там сложного? 1 исполняемый файл, в базе для каждой страницы подключается шаблон и модули. Исполняемый файл собирает страницу.
И на этом движке были реализованы не только простые сайты, но и каталоги (с личными аккаунтами), сервисы.
Я не против бд для меню, при условии: 1) реализовано полное кэширование страницы; 2) реализовано кеширование через меткешед (чтобы не обращаться к базе данных)
Никогда не пользовался разными CMS и не собираюсь.
Это просто для примера. У меня, например, много проектов на самописах на базе фреймворка, но в них я тоже использую БД для хранения меню. Это очень удобно, поэтому не вижу смысла делать иначе, исходя из каких-то фееричных представлений. Хотя у меня есть CMS собственной разработки, сделанная исключительно на файлах, вообще без использования реляционных БД.
А популярные CMS я привёл для примера по той причине, что это наглядно показывает, как делают свои проекты общепризнанные грамотные разработчики, а не Вася Пупкин, пилящий свой велосипед.
. У меня, например, много проектов на самописах на базе фреймворка, но в них я тоже использую БД для хранения меню.
Перечитай название темы для начала. При чем тут меню? Я тоже когда то в проекте делал динамическое добавление страниц в меню. Записи с определенным типом, например, категория, автоматически добавлялись в меняю. В этой теме разговор идет о простом и быстром переводе интерфейса, тратить ресурс базы данных на который будет только очень неумелый разработчик.
Перечитай название темы для начала. При чем тут меню?
Ну я же кроме названия темы прочитал и все сообщения в теме. И там говорится про меню. Или ты забыл?
В этой теме разговор идет о простом и быстром переводе интерфейса
Это принципиально не отличается от перевода всего остального. В том числе и меню.
тратить ресурс базы данных на который будет только очень неумелый разработчик
У умелых разработчиков есть в основном два подхода к проблеме перевода:
- хранение перевода контента в базе данных
- хранение переведённых фраз в специальных языковых файлах.
Неумелых разработчиков мы здесь не обсуждаем, они могут творить вообще всё, что им в башку взбредёт.
У умелых разработчиков есть в основном два подхода к проблеме перевода:
- хранение перевода контента в базе данных
- хранение переведённых фраз в специальных языковых файлах.
Неумелых разработчиков мы здесь не обсуждаем, они могут творить вообще всё, что им в башку взбредёт.
Принимается, если говорить в таком ключе. Но сакцентирую - это не предмет топика. Мне интересен перевод определенного интерфейса, который будет очень редко, практически никогда меняться. Для этого использовать БД нецелесообразно.
Довольно странное заявление. Ты когда-нибудь заглядывал в код или в БД популярных CMS? Попробуй заглянуть. У них меню в базе данных. Либо генерится "на лету" в случае динамического контента (но это явно не случай ТС). Никакими файлами там и не пахнет. Правда, есть и исключения - Битрикс, например.
Хранение данных в БД - общепринятая практика. Для того и разрабатывались реляционные базы данных.
Вы несколько путаете. Меню это скорее не интерфейс, это динамический контент, то чем управляет контент менеджер. А тут речь об интерфейсных фразах
Ларваель , Symfony, Джанго, вордпресс и да, Битрикс не исключение - у него тоже локализация на файлах построена.
Внимание: речь о локализации интерфейса, а не контента сайта. Это рядом, но разное