- usort: documentation ( source)
<?php
class ObjPrueba {
var $nombre;
var $age;
function ObjPrueba($nombre, $age)
{
$this->nombre = $nombre;
$this->age = $age;
}
/* Ésta es la función de comparación estática: */
static function cmp_obj($a, $b)
{
$al = ($a->age);
$bl = ($b->age);
if ($al == $bl) {
return 0;
}
return ($al < $bl) ? +1 : -1;
}
}
$a[] = new ObjPrueba("c", 22);
$a[] = new ObjPrueba("b", 15);
$a[] = new ObjPrueba("d", 2);
usort($a, array("ObjPrueba", "cmp_obj"));
foreach ($a as $elemento) {
echo $elemento->nombre ." -> ". $elemento->age. "\n";
}