Ejemplo de función en PHP que permite obtener el mayor de un arreglo de objetos por uno de los atributos del objeto. El ejemplo esta basado en una clase llamada persona con dos atributos, nombre y edad. La función “mayor_edad” tiene como parámetro de entrada un arreglo de objetos de tipo Persona y retorna el objeto que cumple la condición de ser el mayor.

 

class Persona
{
	var $nombre;
	var $edad;
	function __construct($nombre,$edad)
	{
		$this->nombre = $nombre;
		$this->edad = $edad;
	}
	
	public function getNombre()
	{
		return $this->nombre;
	}
	public function getEdad()
	{
		return $this->edad;
	}
}

function mayor_edad(array $lista_personas)
{	
	$cantidad_personas = sizeof($lista_personas);
	if($cantidad_personas > 0)
	{
		$persona_mayor_edad = $lista_personas[0];
		for($i = 1;$i < $cantidad_personas;$i++)
		{
			if($persona_mayor_edad->getEdad() < $lista_personas[$i]->getEdad())
			{
				$persona_mayor_edad = $lista_personas[$i];
			}
		}
		return $persona_mayor_edad;
	}
}

$lista_personas = array();
$lista_personas[] = new Persona('Alexis','32');
$lista_personas[] = new Persona('Renier','33');
$lista_personas[] = new Persona('Magdeline','29');
$lista_personas[] = new Persona('Alexis Jr','3');

$persona_mayor_edad = mayor_edad($lista_personas);

print '<fieldset>';
	print '<legend>La persona de mayor edad es</legend>';
	print $persona_mayor_edad->getNombre().', edad: '.$persona_mayor_edad->getEdad();
print '</fieldset>';

Compartir en: