quizá la función
array_multisort() es la que ordena de otro modo los resultados...
me pregunto si serías tan amable de
leer el manual:
http://php.net/array_multisort
porque lo mas curioso, es que a mi se me hace que esa función es la que te juega sucio y tu no lo sabías...