Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

parametizar un método de una clase

Estas en el tema de parametizar un método de una clase en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Muy buenas a todo el foro. Me gustaría crear una clase en la que uno de sus métodos o funciones sea parametizable. Es decir que ...
  #1 (permalink)  
Antiguo 17/09/2007, 05:24
 
Fecha de Ingreso: octubre-2006
Mensajes: 30
Antigüedad: 17 años, 6 meses
Puntos: 0
parametizar un método de una clase

Muy buenas a todo el foro.
Me gustaría crear una clase en la que uno de sus métodos o funciones sea parametizable. Es decir que yo pueda iniciar la clase pasándole la función que debe usar como método. No sé si m'explicao.

Algo así:

class myClass{
var funcion
var parametro = "";
/*.../*

// Método constructor.
function myClass($funcion="",$parametro=""){
}

// Método general.
function ejecuta(){
/*.../*
// Método privado parametizable.
$this->funcion($this->parametro));
/*.../*
}
}

//-----------------
//La declaración del objeto...
$objeto = new myClass("Mundo","funcionA");
$objeto->ejecuta();

function funcionA($pinta){
echo "Hola ".$pinta;
}

Un poco de lio, ¿no?
  #2 (permalink)  
Antiguo 17/09/2007, 05:54
 
Fecha de Ingreso: octubre-2006
Mensajes: 30
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: parametizar un método de una clase

Ya lo tengo, pero si encontráis una forma más elegante pues os lo agradezco.
Ahí va:

class myClass{
var funcion
var parametro = "";
/*.../*

// Método constructor.
function myClass($funcion="",$parametro=""){
}

// Método general.
function ejecuta(){
/*.../*
// Método privado parametizable.
$funcion = $this->funcion; // Aquí esta el tema.
$funcion($this->parametro));
/*.../*
}
}

//-----------------
//La declaración del objeto...
$objeto = new myClass("Mundo","funcionA");
$objeto->ejecuta();

function funcionA($pinta){
echo "Hola ".$pinta;
}
  #3 (permalink)  
Antiguo 17/09/2007, 08:35
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: parametizar un método de una clase

La forma que lo estas haciendo es correcta, o si no puedes usar call_user_func_array o call_user_func, ambas en el manual de PHP.

Saludos.

PD muevo tu tema a PHP POO.
  #4 (permalink)  
Antiguo 17/09/2007, 09:36
 
Fecha de Ingreso: octubre-2006
Mensajes: 30
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: parametizar un método de una clase

Muchísimas gracias, GatorV
Muy valiosa la info, no te acostarás sin haber aprendido algo nuevo...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:17.