| |||
Respuesta: Counstructor Respuesta rapida: No se puede Respuesta lenta y complicada : Debes de crearte un constructor vacio y luego controlar las variables que le pasas por medio de las funciones func_num_args() y func_get_args($id_argumento). Yo lo que hago es esto : Código PHP: Tambien he leido algo de un metodo llamado __call, pero en resumidas cuentas viene a ser lo mismo pero de otra forma. Espero que te sirva. |
| ||||
Respuesta: Counstructor Cita: Si tú quieres hacer lo mismo que otros lenguajes como Java, no, no se puede de la misma manera (no tiene por defecto "sobrecarga de métodos"), pero hay formas un poco más extensas para hacerlo.De todas maneras no es una práctica muy recomendada tener múltiples métodos que se llaman lo mismo para luego variar en solo la firma, puede ser práctico al principio a la hora de codificar pero llega un momento que dificulta la claridad del diseño. |
| |||
Respuesta: Counstructor ArrauKano, me da a mi que no se puede redefinir metodos, ni tan siquiera en php5, y si lo hay te agradeceria enormemente que digas como se hace. enriqueplace tengo que discrepar contigo en lo que se refiere a tener un metodo con el mismo nombre. No digo en otros, pero en lo que a constructores se refiere, creo que no ensucia el codigo y hace que la programacion sea muchisimo mas sencilla. Imaginate tener un constructor para 1 parametro, otro para 2, ... Y no creo que sea recomendable tener solo un constructor vacio y luego ir rellenando los valores a mano, ya que si nos basamos en la idea del constructor se supone que es quien nos tiene que dar el objeto inicial. |
| ||||
Respuesta: Counstructor Puedes redefinir métodos usando el mismo nombre, siempre y cuando estos sean publicos o protegidos. En el link que dejo enriqueplace explican como hacerlo: http://ar2.php.net/manual/es/languag...verloading.php y http://ar2.php.net/manual/es/languag...visibility.php Saludos. |
| |||
Respuesta: Counstructor sere muy burro, pero copiado y pegado de la pagina de anieto 2k, me dice que nanai. He provado a poner los metodos publicos y tampoco. Sino es mucho pedir podrias poner un ejemplo? edit: Tal vez sea eso, que yo vengo de programar con c# y estoy muy acostumbrado a usar la sobrecarga. Pero sigo pensando que el constructor no deberia ser lo minimo, sino el objeto original en cada proceso. Ahora , como ya he dicho yo vengo de c# y en php he aprendido un poco a tumbos y hay ciertos conceptos que no tengo muy claros. Última edición por raurodse; 08/12/2008 a las 17:09 |
| |||
Respuesta: Counstructor Muchas gracias por la ayuda Código HTML: Fatal error: Cannot redeclare Pruebas::Pruebas() in /opt/lampp/htdocs/pruebaobjetos/object_data/prueba.php on line 25 Código PHP: edit: Aclara que la linea 25 es el segundo pruebas Reedit: Puede ser que sea porque en la declaracion de los metodos los llama con el mismo nombre y que ahi se ha equivocado? que en realidad seria prueba1, y prueba2? y que el $accepted_methods = array("hello"); en lugar de ese deberia ser un $accepted_methods = array("Prueba");? Última edición por raurodse; 08/12/2008 a las 17:22 |