Foros del Web » Programando para Internet » PHP »

__CLASS__ + __toString + Herencia

Estas en el tema de __CLASS__ + __toString + Herencia en el foro de PHP en Foros del Web. Buenas, A ver tengo una clase (mas concretamente una excepcion) con un metodo __toString de la que heredan otras clases. CUando se crea un objeto ...
  #1 (permalink)  
Antiguo 12/09/2010, 06:32
 
Fecha de Ingreso: agosto-2009
Mensajes: 15
Antigüedad: 12 años
Puntos: 0
__CLASS__ + __toString + Herencia

Buenas,

A ver tengo una clase (mas concretamente una excepcion) con un metodo __toString de la que heredan otras clases.

CUando se crea un objeto de la clase hijo (una excepcion) se llama al metodo __toString (el cual no sobreescriben). Este metodo contiene una cadena de texto en la que quiero que aparezca el nombre de la clase hijo. Lo he intentdo con __CLASS__ y con get_class() pero ambas me devuelven siempre el nombre de la clase padre.

¿Alguna idea?
  #2 (permalink)  
Antiguo 12/09/2010, 06:40
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 12 años, 2 meses
Puntos: 1517
Respuesta: __CLASS__ + __toString + Herencia

Escribe lo que hayas hecho...

Edito:
Bueno a mi me resultó que me dio el nombre de la clase del hijo de esta forma
Código PHP:
Ver original
  1. <?php
  2. // Declare a simple class
  3. class TestClass
  4. {
  5.     public function __toString()
  6.     {
  7.         return get_class($this);
  8.     }
  9. }
  10.  
  11. class ChildTestClass extends TestClass
  12. {
  13.  
  14. }
  15.  
  16. $class = new ChildTestClass();
  17. echo $class; // Imprime ChildTestClass
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Última edición por abimaelrc; 12/09/2010 a las 06:50
  #3 (permalink)  
Antiguo 12/09/2010, 08:01
 
Fecha de Ingreso: agosto-2009
Mensajes: 15
Antigüedad: 12 años
Puntos: 0
Respuesta: __CLASS__ + __toString + Herencia

Ha funcionado de maravilla ^^. Muchas gracias

Etiquetas: class, herencia, tostring
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 04:30.