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

Добавить универсальности к запросам БД из PHP?

Нужно делать запросы к БД, которая имеет ~20 полей, с разными условиями (>,<,=) по разным полям.
Сейчас приходится получать список параметров на входе моей функции и с помощью условий строить "вручную" запрос.
Есть ли какое-нибудь решение, с помощью которого можно будет проще и строить запросы к mysql из php и которое добавит универсальности что ли... ?
  • Вопрос задан
  • 331 просмотр
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 4
FanatPHP
@FanatPHP
Чебуратор тега РНР
Следует понимать, что даже с использованием перечисленных выше инструментов, без "ручной" сборки запроса не обойтись.

Но самое главное - это и не нужно.
Если даже натужиться и взгромоздить на свое приложение какой-нибудь автопостроитель запросов, то в итоге мы получим следующие последствия:

- куча времени, убитого на поиски, адаптацию, и допиливание означенного автопостроителя
- эмоции вида "как эта №%;%:?У#$^№ вообще работает??!" когда через пол-года придется добавить какое-либо новое поле
- апофеоз, когда потребуется добавить условие, не поддерживаемое автопострителем, какое-нибудь IF EXISTS

Поверьте, затраты на написание запроса вручную (неважно, через убогое mysql_query или Доктрину) - ничто по сравнению с возможностью **прочитать и понять**, для чего, вообще, данный код нужен, и как он это делает.

Поэтому излишняя автоматизация бывает очень вредна. И гоняться за ней не стоит.
Ответ написан
@ivkol
Ответ написан
Комментировать
usdglander
@usdglander Куратор тега PHP
Yipee-ki-yay
Использовать QueryBuilder какой нить не вариант?
Ответ написан
Комментировать
MetaAbstract
@MetaAbstract
Архитектор информационных систем и баз данных. Ful
Вы можете использовать ORM (Doctrine или Propel)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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