Foros del Web » Programando para Internet » PHP »

function()

Estas en el tema de function() en el foro de PHP en Foros del Web. Hola a todos Necesito establecer una funcion con ciertos parametros opcionales. f1(p1,p2,p3) p3 es opcional y tiene una valor por defecto. Como debo especificar esto ...
  #1 (permalink)  
Antiguo 13/10/2003, 06:28
 
Fecha de Ingreso: julio-2003
Mensajes: 132
Antigüedad: 14 años, 4 meses
Puntos: 0
function()

Hola a todos
Necesito establecer una funcion con ciertos parametros opcionales.
f1(p1,p2,p3)
p3 es opcional y tiene una valor por defecto.
Como debo especificar esto en la signatura de la funcion?
Gracias de antemano
  #2 (permalink)  
Antiguo 13/10/2003, 06:32
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

¿Has revisado ya el manual? www.php.net/functions .

Resumiendo lo que pone, lo que necesitas es:

function f1($p1,$p2,$p3="valor por defecto")

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 13/10/2003, 06:39
 
Fecha de Ingreso: julio-2003
Mensajes: 132
Antigüedad: 14 años, 4 meses
Puntos: 0
function()

si,si pero mi problema es el siguiente:
Si yo kuando hago la llamada no relleno alguno de los parametros me da un error en tiempo de ejecucion.
p ej:
$r=$objNot->me1("p1","p2",,"p4");
me da error y a partie del 2º parametro todos son opcionales

la declaracion de la funcion es:

function me1($p1,$p2="",$p3="",$p4="")

Gracias de nuevo
  #4 (permalink)  
Antiguo 13/10/2003, 06:47
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Bueno, pero eso no era lo que preguntabas originalmente. Si hubieses puesto este segundo mensaje desde el comienzo, todos lo hubiesemos tenido mas claro.

Como no es una cosa que utilice, no estoy seguro de que se pueda. Tal como lo pones tu, seguro que no. Podrias hacer en el codigo de tu funcion que mire si el valor pasado para ese parametro es un cierto valor (false, NULL, 0 o '', por ejemplo), le asigne el valor por defecto.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 22:43.