Per me dovrebbe funzionare. Abilita la visualizzazione degli errori, e controlla cosa succede. Dubito seriamente che solo per quell'array hai superato il memory_limit impostato, o che tu abbia una versione così vecchia di php che json_encode ancora non era stato introdotto (da 5.2).