Foros del Web » Programando para Internet » PHP »

PHP OO Problema con imprimir Objeto

Estas en el tema de Problema con imprimir Objeto en el foro de PHP en Foros del Web. Hola comunidad... Saludos quisiera ver la posibilidad de que me ayudaran entender de por que me sale el siguiente error en mi codigo. ERROR: Código: ...
  #1 (permalink)  
Antiguo 11/06/2014, 08:35
 
Fecha de Ingreso: junio-2014
Mensajes: 6
Antigüedad: 9 años, 10 meses
Puntos: 0
Pregunta Problema con imprimir Objeto

Hola comunidad... Saludos
quisiera ver la posibilidad de que me ayudaran entender de por que me sale el siguiente error en mi codigo.
ERROR:
Código:
Catchable fatal error: Object of class alumnos could not be converted to string in C:\xampp\htdocs\oop5\universidad.php on line 24
mi clase es la siguiente:

Código:
<?php
require("Alumnos.php");

class universidad
{
    private $_alumno = array();

    public function addAlumnos(alumnos $alum)
    {
        $this->_alumno[] = $alum;
    }
    public function __toString()
    {
         imprimir();
    }

    public function imprimir()
    {
        for($i=0; $i <= sizeof($this->_alumno); $i++)
        {
            return $this->_alumno[$i];
        }

    }
}
$per = new universidad();
$matricula = new alumnos("Juan","25","pro");
$per->addAlumnos($matricula);
$per->imprimir();

Gracias por su ayuda
  #2 (permalink)  
Antiguo 11/06/2014, 08:37
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Problema con imprimir Objeto

Cita:
public function __toString()
{
$this->imprimir();
}
__________________
Salu2!
  #3 (permalink)  
Antiguo 11/06/2014, 08:43
 
Fecha de Ingreso: junio-2014
Mensajes: 6
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: Problema con imprimir Objeto

Gracias Maestro, pffff se me paso pero aun sigue con el error cuando mando a imprimir mensaje;

Código:
require("Alumnos.php");
class universidad
{
	private $_alumno = array();
	
	public function addAlumnos(alumnos $alum)
	{
		$this->_alumno[] = $alum;
			
	}
	public function __toString()
	{
		 $this->imprimir();
	}
	
	public function imprimir()
	{
		for($i=0; $i <= sizeof($this->_alumno); $i++)
		{
			echo $this->_alumno[$i];
		}
		
	}
}
$per = new universidad();
$matricula = new alumnos("Juan","25","pro");
$per->addAlumnos($matricula);
$per->imprimir();
Código:
Catchable fatal error: Object of class alumnos could not be converted to string in C:\xampp\htdocs\oop5\universidad.php on
  #4 (permalink)  
Antiguo 11/06/2014, 08:53
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Problema con imprimir Objeto

La clase alumnos no tiene implementado el metodo __toString()
Código PHP:
Ver original
  1. class alumnos
  2. {
  3.     // propiedades y metodos
  4.     public function __toString()
  5.     {
  6.          $this->alguna_propiedad; //
  7.     }
  8. }
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #5 (permalink)  
Antiguo 11/06/2014, 09:23
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Problema con imprimir Objeto

Cierto @hhs !! se me hacia raro el error estuviera en Unviersidad pero es solo un contenedor de alumnos :P

Lo que es mirar rapido
__________________
Salu2!
  #6 (permalink)  
Antiguo 11/06/2014, 09:26
 
Fecha de Ingreso: junio-2014
Mensajes: 6
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: Problema con imprimir Objeto

Gracias por ayudar
en la clase alumno

solo tengo una estructura
Código PHP:
Ver original
  1. <?php
  2. /**
  3.  * Clase Alumnos
  4.  */
  5. class alumnos
  6. {
  7.     private $_nombre;
  8.     private $_edad;
  9.     private $_carrera;
  10.  
  11.     public function __construct($nom, $edad, $carrera)
  12.     {
  13.         $this->_nombre = $nom;
  14.         $this->_edad = $edad;
  15.         $this->_carrera = $carrera;
  16.     }
  17.  
  18.  
  19.  
  20. }
  #7 (permalink)  
Antiguo 11/06/2014, 09:35
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Problema con imprimir Objeto

Entonces.. define un __toString() en Alumnos :)

Código PHP:
Ver original
  1. public function __toString()
  2.     {
  3.          return "{$this->_nombre} ({$this->_edad} años) de {$this->_carrera}\n";
  4.     }
__________________
Salu2!
  #8 (permalink)  
Antiguo 11/06/2014, 09:42
 
Fecha de Ingreso: junio-2014
Mensajes: 6
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: Problema con imprimir Objeto

Cita:
Iniciado por Italico76 Ver Mensaje
Entonces.. define un __toString() en Alumnos :)

Código PHP:
Ver original
  1. public function __toString()
  2.     {
  3.          return "{$this->_nombre} ({$this->_edad} años) de {$this->_carrera}\n";
  4.     }

Gracias !!! eso es...
se agradece mucho su ayuda

Etiquetas: objeto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:11.