Enlaces
Esta en:

documentos
Arriba
Bind-9
Bind-8
Ad+bind
Dhcp
Kdephp
Shell
Trucos
Php
Documentos
Cuestiones php
Fedora
Legal
W2000 xp
COMOS
Errores dns

Re: [PHP-ES] Extender un objeto despues de declararlo

Write haof XML files: Rafa Couto <rafacouto_at_gmail.com>
Fecha: Fri, 2 Feb 2007 15:42:54 +0100

¿Como puedo hacer que un objeto sea un "extend" de otro, pero despues de
> llamar a un metodo de él mismo?
>
> Ejemplo:
>
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------
> // fichero mysql.php
>
> class mysql {
> }
>
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------
> // fichero oracle.php
>
> class oracle {
> }
>
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------
> // fichero base.php
>
> class base {
> function __construct() {
> $this->tipo = $this->obtener_tipo();
>
> if($tipo == "oracle") --> quiero recoger todos los metodos,
> propiedades, etc, de la clase oracle
> elseif($tipo == "mysql") --> quiero recoger todos los metodos,
> propiedades, etc de la clase mysql
> }
>
> function obtener_tipo() {
> // obtengo el tipo leyendo un archivo externo
> [codigo]...[/codigo]
>
> return $tipo;
> }
> }
>
> $bd = new base();
>
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> ¿Se puede hacer?
>

Lo que estás proponiendo es que la clase "base" sea una clase abstracta y
las clases "oracle" y "mysql" hereden de ella. Pues la respuesta es que
extiendas la clase "base" en "oracle" y "mysql". No te olvides de
sobrecargar en las hijas los métodos de la clase abstracta a modo de
interfaz...

echo 'Saludos';

-- 
Rafa Couto (caligari)
mailto:rafacouto @gmail.com
Linux user #99126 (http://counter.li.org)
Nearby vie feb 02 2007 - 18:23:06 CET

Este archivo fue generado por hypermail 2.2.0 : mié nov 07 2007 - 20:55:36 CET


Página Principal
Google

Web
dns.bdat.net

Visita nuestro proveedor:
www.bdat.net

Publicidad:

Impresenteibols:Humor Jazz, música en vivo