Hola diré ante todo que este código no es mío, pero yo lo he usado hasta ahora para ordenar objetos en PHP y funciona.
function ordena_objetos($array_de_objetos, $propiedad_a_considerar, $orden_ascendente = TRUE) {
$a_ordenar = array();
$resultado = array();
//Se recogen en un nuevo array los valores de la propiedad a
//considerar en el ordenamiento
foreach ($array_de_objetos as $i => $objeto) {
$a_ordenar[$i] = $objeto->$propiedad_a_considerar;
}
//Se ordena el array creado en orden ascendente
asort($a_ordenar);
//Se emplean los índices del array ordenado para extraer los
//objetos del array original en el orden necesario guardándolos
//en un nuevo array
foreach ($a_ordenar as $i => $valor) {
$resultado[] = $array_de_objetos[$i];
}
//Se devuelve el array con los objetos ordenados, invirtiendo el
//orden si así se requiere
return ($orden_ascendente) ? $resultado : array_reverse($resultado);
}
Esto ha sido todo por el tut de hoy, que vaya bien, Ciao!!!