Purely academically speaking, arrays don't imply order. Vectors might be a better word for something that implies order. Actually arrays are one of the two concrete implementations of a collection (the other being a linked list), and a collection surely does not imply order.
PHP complicates things here a bit more, because actually all arrays in PHP are hash tables regardless of the variable type of the keys. And hashtables are definitely an unordered collection.
How was that for an anal computer science explanation?
I completely agree that the syntax is cleaner, this is actually a habit that has rubbed off on me during the time I spent hacking Moodle! The only problem is that those casts "look" free (performance-wise), but you don't actually know what's going on internally.
And also, I haven't seen any documentation on this type of casting in the PHP docs (might be that I haven't searched well enough). This is a bit unsettling, as there's no guarantee that PHP 6 might simply not support casting like that. A tiny tiny bit unsettling.