Задать вопрос
passshift
@passshift
php, js, html5, css

Как писать так чтобы не повторяться?

Пишу интернет-магазин в качестве закрепления изученного материала.

В процессе написания возникает множество функций в целом похожих друг на друга, но тем не менее с различными условиями.

Так например при добавлении товара в каталог я делаю проверку введенных данных и затем в модели с помощью функции create добавляю товар если все указано верно.

После создания товара его понятное дело можно отредактировать, для сохранения изменений есть отдельная функция в модели, называется просто edit

По сути обе функции в модели товара похожи, поля форм создания и редактирования товара практически идентичны, разница лишь в insert и update.

Возможно ли объединить две функции в одну и как писать так чтобы не повторяться? Ведь помимо товаров в магазине предусмотрена возможность создания категорий, счетов на оплату, страниц и т.д.
  • Вопрос задан
  • 2337 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
OlegTar
@OlegTar
программист .NET, Javascript, Perl
Ваша СУБД может поддерживать конструкцию "INSERT OR UPDATE", например, она либо вставляет элемент, либо его апдейтит, если он есть, но нужно, чтобы был уже известен айдишник.

можно также конструировать строку
$str = (условие ? 'INSERT ' : 'UPDATE ') . ''

В качестве условия можно взять проверку передан ли id в функцию.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽