Поясняю:
1. json_decode со вторым аргументом всегда вернет массив (при отсутствии ошибок во входных данных первого аргумента). Поэтому проверка на is_array излишна;
2. Проверять каждый вложенный элемент массива нет смысла, если мы используем только code; (для разных кодов можно switch сделать)
2. Проверка на is_numeric тоже не нужна. PHP при сравнении двойным равно (==) будет использовать нестрогое сравнение. Будь 41 строка или число, результат будет истиной. Для строгого сравнения используется оператор ===;
@HeBonpoc, по теме, я написал выше ссылки. А руководство необходимо для общего развития и понимания, куда стоит двигаться в мире PHP.
Кстати, собачки (@) которые блокируют ошибки использовать как постоянное решение категорически нельзя.
@vdem, хз причем ) просто меня коробит тот факт, что при фактически одном и томже пользователе БД, вставка работает при указании этого поля в атрибутах класса. И только с query buider от Zend. wtf?
@vdem, т.е. сначала выполнить SELECT nextval('seq_name'); и возвращаемое значение использовать при вставке?
Это бредово, ведь последовательность должна срабатывать сама, без прямой вставки идентификатора о_О
Обычно, я создавая автоинкрементное поле называл его id, ставил тип serial и pk обозначал. Все остальное (в т.ч. последовательность создается сама)...
Как быть, если в таблице нет primary key и на уникальном идентификаторе стоит последовательность?