Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Sobreescribir Métodos

Estas en el tema de Sobreescribir Métodos en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Alguien con conocimientos sobre POO, podria poner un ejemplo práctico con código para ver la funcionalidad sobre éste tema tratado en el siguiente link? http://www.zonaphp.com/programacion-...etos-en-php/8/ ...
  #1 (permalink)  
Antiguo 05/03/2006, 18:44
 
Fecha de Ingreso: marzo-2002
Ubicación: Salta Capital - Actualmente estudiando en Córdoba
Mensajes: 430
Antigüedad: 22 años, 1 mes
Puntos: 0
Sobreescribir Métodos

Alguien con conocimientos sobre POO, podria poner un ejemplo práctico con código para ver la funcionalidad sobre éste tema tratado en el siguiente link?

http://www.zonaphp.com/programacion-...etos-en-php/8/

Seria de mucha utilidad, ese articulo ésta barbaro, si alguien lo pudiese completar con un ejemplo práctico con el codigo realizado, les agradeceria mucho, en realidad, les agradeceriamos todos.
Saludos.-
__________________
Nada es imposible, con un poco de esfuerzo se logran las cosas.-
  #2 (permalink)  
Antiguo 23/03/2006, 06:39
 
Fecha de Ingreso: abril-2004
Ubicación: Rosario, Argentina
Mensajes: 124
Antigüedad: 20 años
Puntos: 11
Hola,

Interesante el material, pero no es algo de otro mundo...
El link expone este ejemplo:

Código:
<?
class Universo
{
        function clonar()
        {
                $cadena=serialize($this);
                $vec=explode(':',$cadena);
                $nombre=str_replace("\"",'',$vec[2]);
                $ret = new $nombre;
                return $ret;
        }
}

class Algo extends Universo {
    var $a;
    
    function Algo() {    }
        
}

// Entonces:
$obj=new Algo();
$obj->a = '10';
//Algo extiende a Universo !!
$otro = $obj->clonar();
?>
Pero se podría hacer de esta forma, que es mucho más sencillo y comprensible:

Código:
class a {
    function clonar() {
        $a = get_class($this);
        return new $a;
    }
    
    
}


class b extends a {
    function b() {
        
    }
}

$b = new b();
$bb = $b->clonar();

Un saludo,
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 02:43.