[Php-objetos] Ejercicio 1
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Jue Feb 19 23:54:09 ARST 2009
Hola Andrés,
El jue, 19-02-2009 a las 22:28 -0200, Andres Manuel escribió:
> >
> > * Estás validando tipos con is_string() y is_float(). No hace falta si
> > el constructor inicializa los atributos del tipo correcto. Recordá que
> > PHP no es tipado, pero sí define tipos con la primer asignación. Además
> > el código validado es mucho mejor pero más engorroso de leer... una
> > mejor aproximación es definir clases para los tipos primitivos y que el
> > método quede por ejemplo: function setTipo(String $tipo=null) para que
> > el casting te lo haga el intérprete.
> >
> Hola Leo estoy intentando como loco hacer, lo tengo definido tal como me
> lo pasaste de ejemplo pero no funca.
>
> function setTipo(String $tipo=null)
>
> Pero me tira error, busque el error en la nube, pero no encuentro lo que
> necesito sobre el error.
> Aqui detallo el error:
>
> *Catchable fatal error*: Argument 1 passed to Auto::setplazas() must be
> an instance of string, integer given, called in
> C:\wamp\www\ejercicio1\class_auto.php on line 8
Fijate bien que el mail te digo "una mejor aproximación es definir
clases para los tipos primitivos", es decir, tenés que empezar creando
la clase String, que en PHP no existe, para que function setTipo(String
$tipo=null) funcione.
Obvio que si no querés gastar tiempo en crear esta clase no lo hagas.
Yo te contaba como era la forma de implementar el tipado sin preguntar
por el tipo.
Seguimos.
--
Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
Más información sobre la lista de distribución Php-objetos