• Как сделать класс с методами добавляющим данные?

    glaphire
    @glaphire Куратор тега PHP
    PHP developer
    Это сочетание двух шаблонов проектирования - Builder + Fluent Interface. Описание и примеры реализаций:
    Builder
    Fluent Interface
    Ответ написан
    Комментировать
  • Как сделать класс с методами добавляющим данные?

    @Frayl
    Это называется цепочкой методов.

    class nClass
    {
        public function _construct() 
        {}
    
        public function add(int $value)
        {
            //Code...
            return $this;
        }
    }


    $nclass = new nClass();
    
    $nclass->add(2)->add(33);
    Ответ написан
    Комментировать
  • Что такое MVC и как его использовать?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    На мелких одноразовых задачах вида "сделать форму, которая бы сохраняла что-то в таблицу и забыть про нее" понять преимущества MVC невозможно.

    MVC - это не про сделать, а про поддерживать и развивать.

    Представим, что вместо обычной формы мы решим сделать ajax. Если у нас будет обычный винегрет из SQL, PHP и html, то придется переписывать его весь.
    Если же у нас нормальная структура, то просто заменим во View вызов шаблонизатора на json кодирование. то есть поменяем одну строчку кода.

    Допустим, в дополнение к форме нам нужно будет сделать консольную команду, которая берет данные из файла.

    Если используется обычный говнокод-подход, то придется все писать заново.
    При использовании MVC, надо будет в этой утилите написать только чтение из файла, а дальше просто вызвать метод модели, который у нас уже есть.
    Ответ написан
    Комментировать
  • Что такое MVC и как его использовать?

    vabka
    @vabka
    Токсичный шарпист
    MVC - это про разделение логики на три основных куска:
    1. View - отвечает только за формирование html - как пользователь будет видеть страничку
    2. Model - отвечает за непосредственно логику по работе с данными, работает с базой данных и другими внешними сервисами. Именно тут следует реализовывать всякую валидацию, CRUD и прочее.
    3. Controller - обрабатывает http запрос, подготавливает данные из него, чтобы их могла обработать Model, а потом передаёт их во View (опционально), либо самостоятельно формирует HTTP ответ из результата.

    PS: это не книжное определение, а чисто моё, как я в большинстве случаев вижу реализацию MVC
    Почему надо использовать именно MVC, а не напрямую с предзапросом и экранированием надо делать?

    Не понял, про какое такое экранирование и предзапросы идёт речь, но MVC нужно просто для удобства расширения и изменения.
    Ответ написан