Ответы пользователя по тегу PHP
  • Как реализовать лаконичную запись условий?

    rhaport
    @rhaport
    такие проблемы решаются каждая по своему. Найти общее решение для всего не всегда будет оптимально.
    В данном случае можно определить бинарную фунцию functor: (0,1)x(0,1) -> (f1,f2,f3,f4)
    функции и будут Ваши some conditions.
    Типа такого (сорри синтакиси сишный, так как не знаю php),
    int to0123(bool a, bool b)
    {
       return ((int)(a == true) << 1) + (int)(b == true);
    }


    Если, conditions = {f1, f2, f3, f4};, где fx функции, которые проверяют ваши some conditions,

    то можно писать типа такого
    idx = to0123($this->isNewRecord, empty($this->parent_id));
    if (conditions[idx])
         success = true
    Ответ написан
    Комментировать