Задать вопрос

Два метода или один с условием?

Постоянно встречаюсь с задачей вытягивать из БД данные того или иного объекта. Причем как правило вытягивать их надо или по ID, или по имени (оба ключа уникальны).
Вопрос - создавать в классе менеджера материалов два метода getById и getByName или создать один get($key), в котором проверять, $key - это int или string, и соответственно менять where clause на id=$key или name=$key?
Так как кроме этого поля оба метода вышли бы идентичными.
  • Вопрос задан
  • 196 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Я бы не ориентировался на тип, если в будущем понадобится вытаскивать данные по другому полю с таким же типом - ваша логика рухнет, и будет у вас метод get(), который работает только с id и name, но не работает с другими полями.

Как вариант, можно сделать метод get($field_name, $value)
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
miraage
@miraage
Старый прогер
getBy($field, $value);
Ответ написан
65536
@65536
2
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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