• Не могу понять для чего нужны Entities в ООП PHP, Yii?

    @hortuk
    Олег Муравейко, основное назначение как раз таки в проекции струтуры базы в объектно ориентированный вид. Как вы в своем примере опишите связи между объектами, опять phpdoc для параметра добавите? А потом в разных местах будем каждый раз через foreach собирать все кучу?

    Предложенное вами решение на мой взгляд плохое, плюс ко всему еще и получаем по сути смешение разных парадигм разработки.
  • Не могу понять для чего нужны Entities в ООП PHP, Yii?

    @hortuk
    Олег Муравейко вам бы для начала научиться по стандарту писать, а потом уже думать что делать с остальным, имхо.
    На то и есть entity, он либо проецирует запись в БД в объект либо не используется вообще. А ваш пример похож на процедурное программирование, с какой-то эмуляцией подсказок, а не на ООП, от объектов только какие-то бесполезные огрызки.

    fsheden Это просто паттерн, который выбрали разработчики фреймворка для представления данных и структуры из базы данных в объектно-ориентированном стиле, и в данном случае кроме представления позволят удобно изменять и получать данные, описывать связи между объектами, валидировать данные. Ничего магического в этом нет, просто такой подход в реализации.
  • Нормальная ли практика инициализировать сессию при первом заходе на страницу сайта?

    @hortuk Автор вопроса
    Не суть, в обоих случаях есть процесс инициализации и использования сессии, насколько я понимаю. Вопрос про саму инициализацию, которая происходит без каких либо действий требующих её.
  • Нормальная ли практика инициализировать сессию при первом заходе на страницу сайта?

    @hortuk Автор вопроса
    Спасибо за ответ! А как бороться с тем, что у нас в таком случае куча сессий, которые не используются в принципе и просто засоряют сервер на время жизни?
    Например, я зашел просто прочитать статью и вышел, те же боты, а сессия застыла на 2 часа...
    Так же, возможность злоумышленником засорить веб-сервер, без особого напряга сессионными файлами вооружившись курлом (если таким вообще кто-то занимается)

    Есть ли какие-то решения для такого рода проблем, чтобы уберечь себя в будущем от чего-то подобного?

    Я вижу такие вот варианты:
    1) Оставить все как есть и в случае чего просто масштабировать систему.
    2) Прикрутить альтернативное хранилище, типа redis.
    3) Переводить проект на stateless api

    Что можете посоветовать?