Никогда с первого раза не могу прочитать такие условия. Иногда, когда условий 2-3, строю такие конструкции, проверяю их где-нибудь, а потом стираю и разбиваю на несколько проверок.
Внимательно посмотрите на конструктор, который вы показали.
P.S. В классе Order у свойств не нужен префикс order_, то, что это id текущего заказа и так понятно. $order->id, не $order->order_id.
littleguga: я на 99% уверен, что дело в старой версии openssl, но обновляться она что-то отказывается, так что процесс проверки может занять довольно долгое время. Но о результате я обязательно напишу.
sim3x: чего ты тут оффтоп устраиваешь в комментариях? Задавай вопрос как простой смертный, а потом сам его удаляй, потому что "ведёт к дискуссии или спору" :)
Станислав Макаров: да я не спорю, более того, если бы я так не считал, то и комментить бы не стал.
Это просто вопрос семантики и поддержания ордунга: если автор задаст вопрос "На каких технологиях делать такую систему?", я ни секунды сомневаться не стану и напишу ответ, а не комментарий.
Пользователь должен автоматически получить новую версию всего и работать с новой версией API или достаточно просто уведомления о том, что нужно перезагрузить страницу? Хинт: первое сделать очень сложно, второе - очень легко.
Что объяснить? Кому? Говорите заказчику, что для достижения высокого балла нужно исправить это и то. Если можете сами - исправляете, если не можете - говорите заказчику кого искать.