Estoy creando una clase para listar los contactos de mi agenda, necesito listar los contactos automaticamente y no llamandolos uno por uno puesto que para listarlos tengo un botón de un formulario que lo hará.
Para listar los contactos automaticamente se me ha ocurrido hacer un bucle for y dentro de este generar la llamada al método listar_contactos();
Al ejecutar el código el navegador me muestra:
$mi_agenda1 -> listar_contactos();
$mi_agenda2 -> listar_contactos();
$mi_agenda3 -> listar_contactos();
$mi_agenda4 -> listar_contactos();
Esto es lo que contiene la variable $llamar, pero al invocar esa llamada no me muestra los contactos.
¿Alguien me podria explicar por que sucede esto y como podria solucionarlo?
¡Gracias por adelantado!
Código PHP:
class agenda{
function inicializar($nom, $apel, $tel)
{
$this->nombre=$nom;
$this->apellidos=$apel;
$this->telefono=$tel;
}
function listar_contactos(){
echo $this->nombre;
echo '<br>';
echo $this->apellidos;
echo '<br>';
echo $this->telefono;
echo '<br>';
}
}//fin class
$mi_agenda1 = new agenda();
$mi_agenda1 -> inicializar('Ana','Maria Sellés','966854213');
$mi_agenda2 = new agenda();
$mi_agenda2 -> inicializar('Jose','Lorenzo','966141213');
$mi_agenda3 = new agenda();
$mi_agenda3 -> inicializar('Mariano','Moreno','961021213');
$mi_agenda4 = new agenda();
$mi_agenda4 -> inicializar('Beatriz','Salamanca','960001213');
for ($i=1; $i<=4; $i++)
{
settype($llamar,"object");
$llamar="\$mi_agenda".$i." -> "."listar_contactos();";
echo "<br>";
echo $llamar; //para comprobar el contenido
$llamar;//deberia listar contactos pero no hace nada :(
}