Hola,
Me gustaria saber si una clase puede tener varios constructores. En caso afirmativo ¿a partir de qué version de php?.
Gracias por la ayuda.
| |||
Re: Varios constructores? Cita: Buenass, pues solo se puede tener un constructor, aunque supongo q te refieres si se puede sobrecargar con diferentes parámetros, la respuesta es no. Aunque cada clase tiene su constructor por ejemplo el constructor de cada clase és único y no se sobrecarga, es decir, si tienes una clase que hereda de otra los constructores serán independientes no así como los métodos que si se declaran los mismo en la clase hija se se redeclarará el contenido. Esto al menos en PHP5. Hola, Me gustaria saber si una clase puede tener varios constructores. En caso afirmativo ¿a partir de qué version de php?. Gracias por la ayuda. __________________ Ta Luego! |
| |||
pero podrías usar parámetros opcionales en tu constructor... por ejemplo function Sumar($fact_1, $fact_2 = 5){ return $fact_1 + $fact_2; } Así, puedes usar el constructor de 2 maneras: echo Suma(3);// devuelve 8 echo Suma(3, 4);// devuelve 7 salu2
__________________ :neurotico:neurotico:neurotico:neurotico:neurotico :neurotico:neurotico:neurotico:neurotico:neurotico :neurotico:neurotico:neurotico:neurotico:neurotico |
| |||
Si te pongo un ejemplo (recuerda estamos en la versión php5): Código PHP:
Código:
De esta manera si que lo puedes utilizar pero recuerda que puede ser peligroso normalmente en estos casos tenemos que validar las variables para obtener el resultado esperado más bien para no obtener un resultado inesperado. El valor es-> 7 El valor es-> 4 |
| |||
Buenas. Aunque php no incorpora ni sobrecarga ni polimorfismo, si necesitás estas características se pueden "simular", para que un método o un constructor haga una u otra rutina a partir de la cantidad y el tipo de parámetros que recibe. Un ejemplo en PHP5, que se puede adaptar fácilmente a PHP4, tomando como tipos de datos posibles String y numeric, con cero, uno o dos parámetros. Código PHP: |