Foros del Web » Programando para Internet » PHP »

Control de argumentos en funciones?

Estas en el tema de Control de argumentos en funciones? en el foro de PHP en Foros del Web. Hola, quisiera saber si hay alguna función específica o alguna variable, como pasa en otros lenguajes como JavaScript o ActionScript con el array arg() conteniendo ...
  #1 (permalink)  
Antiguo 07/02/2006, 04:37
 
Fecha de Ingreso: mayo-2003
Mensajes: 527
Antigüedad: 14 años, 6 meses
Puntos: 3
Control de argumentos en funciones?

Hola, quisiera saber si hay alguna función específica o alguna variable, como pasa en otros lenguajes como JavaScript o ActionScript con el array arg() conteniendo como elementos cada valor pasado como parámetro, que controle el número de argumentos pasados a una función.

Lo que quiero hacer es que a una función previamente definida con dos parámetros que es constantemente llamada desde otra parte, y que realiza un número de iteraciones determinado por el resultado de una consulta pasado en uno de dichos parámetros, pueda ser llamada con 3 parámetros de forma que el tercero especifique ya un número exacto y previamente conocido de iteraciones.

Código PHP:
function gestionar_consulta($result$accion) {
    
$num_results mysql_num_rows($result);
    for (
$i 0$i $num_results$i++) {
        
$fila mysql_fetch_assoc($result);
        eval(
$accion); // Acción a realizar con cada registro obtenido del array de resultados
    
}

No sé si a esta función podría pasarle 3 argumentos en vez de 2 como tiene especificado en la implementación, y hacer un algoritmo que si al principio lee que "si (numero_argumentos == 3) entonces hacer iteración for (i=0 hasta arg[2]) { acciones }" teniendo en cuenta que el índice de arg empieza en 0.

Otra posible solución en la que he pensado es si defino en la implementación de la función el tercer parámetro, y dentro de la función, dependiendo de si se le ha pasado o no un valor a ese tercer argumento (averiguándolo mediante !isset() o empty()) actuar de una forma u otra en el número de iteraciones.

Esper haberme explicado bien y que alguien me pueda ayudar.
Un saludo!
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 08:13.