If you’re running an array through json_encode(), and part of that array is a reference to another array, do _not_ json_encode() *that* array first. JSON-encoding something that’s already JSON results in… confusion. This is one of those things that I would have figured out a lot faster if I had any kind of debugging set up for PHP. Maybe I should look at FirePHP. I don’t do a lot of PHP work, but I’m using PHP right now to test some REST web services that I’m writing in .Net/C#. (Debugging the .Net code, of course, is a piece of cake.)