Как получить JSON tree?
Проблема не в json_encode, а в запросе к базе. В результате выполнения запрооса к базе ты получаешь плоский массив, который конечно же преобразуется в плоский json. Добейся сначала получения массива правильной структуры, а потом уже конвертируй.
В качестве опции json_encode надо передать константу JSON_PRETTY_PRINT, которая доступна с версии PHP 5.4 (пример)
br1.php.net/manual/ru/json.constants.php#constant....