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
el codigo que tengo es este
Código PHP:
<?php
class Pruebas {
public function __call($method_name, $arguments) {
$accepted_methods = array("hello");
if(!in_array($method_name, $accepted_methods)) {
trigger_error("Method <strong>$method_name</strong> no existe", E_USER_ERROR);
}
if(count($arguments) == 0) {
$this->Pruebas1();
} elseif(count($arguments) == 1) {
$this->Pruebas2($arguments[0]);
} elseif(count($arguments) == 2) {
$this->Pruebas3($arguments[0], $arguments[1]);
} else {
return false;
}
}
public function Pruebas() {
echo "Hola Pruebas";
}
public function Pruebas($name){
echo "Hola $name";
}
public function Pruebas($first_name, $last_name){
echo "Hola $first_name, $last_name<br>";
}
}
$ot = new Pruebas();
$ot->Pruebas();
$ot->Pruebas("John");
$ot->Pruebas("John", "Smith");
?>
Es copiado y pegado del enlace de anieto 2k pero añadiendo lo que habian comentado de public.
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");?