Страница 1 из 1

Обновление купона

Добавлено: 18.12.2018, 12:59
makki
Вопрос к разработчикам: почему в файле api/Coupons.php в функции update_coupon стоит такой sql запрос:

Код: Выделить всё

$query = $this->db->placehold("UPDATE __coupons SET ?% WHERE id in(?@) LIMIT ?", $coupon, (array)$id, count((array)$id));

а не такой

Код: Выделить всё

$query = $this->db->placehold("UPDATE __coupons SET ?% WHERE id=? LIMIT 1", $coupon, intval($id));

В каких случаях $id может быть массивом?

Добавлено: 18.12.2018, 15:04
zyxer
по умолчанию, вроде не может быть, но я думаю что это сделано для бОльшей гибкости. В любом случае это вообще никак не вредит и не тормозит систему. Или у вас есть другое мнение? Интересно услышать )

Добавлено: 18.12.2018, 16:30
makki
zyxer писал(а):по умолчанию, вроде не может быть, но я думаю что это сделано для бОльшей гибкости. В любом случае это вообще никак не вредит и не тормозит систему. Или у вас есть другое мнение? Интересно услышать )
Не вижу смысла писать конструкции, которые не задействованы. Это лишь сбивает с толку программиста при работе с кодом.

Добавлено: 19.12.2018, 07:02
korshunov
makki писал(а):Не вижу смысла писать конструкции, которые не задействованы. Это лишь сбивает с толку программиста при работе с кодом.

Сейчас не задействованы - возможно, позже понадобятся.
А в данном случае - код простой и понятный, он никак с толку сбить не может.

Мне как-то раз пригодилось - надо было добавить для купонов установку даты массово...

Добавлено: 19.12.2018, 08:33
makki
korshunov писал(а):Сейчас не задействованы - возможно, позже понадобятся.
Программист должен быть минималистом. Это известная истина. Об этом книги пишут.
А в данном случае - код простой и понятный, он никак с толку сбить не может.
Код сбивает с толку не своей непонятностью, а ненужной формулировкой.
Мне как-то раз пригодилось - надо было добавить для купонов установку даты массово...
А у меня была обратная ситуация, когда надо было работать с конкректным купоном по id. Пришлось делать расследование, где в движке востребован массив id. И как оказалось нигде. Более того функция называется update_coupon а не update_coupons

Добавлено: 19.12.2018, 09:52
korshunov
makki писал(а):Программист должен быть минималистом.

В данной ситуации вопрос спорный. С Вашей стороны - подход очень формальный. А с более широких позиций - как раз в текущем положении - будет экономия при доработках, с чем я уже и встречался...

В системе полно мест, где можете найти возможности для куда большей экономии. А экономить на приведении типа (array) - как-то несерьезно.

makki писал(а):Код сбивает с толку не своей непонятностью, а ненужной формулировкой.
Не понял, где Вы нашли ненужную формулировку. Код малюсенький, для CMS стандартный, похожий встречается во многих местах. Все крайне просто, особенно для тех, кто уже работал с системой.


makki писал(а):А у меня была обратная ситуация, когда надо было работать с конкректным купоном по id. Пришлось делать расследование...

Очень интересно, что за ситуация и что за расследование, если все прекрасно работает как для одиночного id, так и для массива...


makki писал(а):Более того функция называется update_coupon а не update_coupons

С многими другими аналогичными функциями та же ситуация, функции называются update_page, update_banner, update_product.