эм… я на 99,999 уверен, что у меня utf-8.
на всякий случай перед помещением в массив конвертил так: iconv('cp1251', 'utf-8', 'значение');
Действительно, null превратился в последовательность типа u0437u0430 и тд.
То есть снова не могу декодировать. Ещё одна проблема в том, что между encode и decode весь JSON сохраняется в БД и декодируется уже оттуда.
Или изначально работайте c utf-8, но тогда вам скорее всего придется все скрипты переписать (потому что обычные строковые функции уже не подойдут), или заранее конвертируйте данные.