Título: Duda sobre cómo pasar parámetros a una función Publicado por: KateLibby en 5 Octubre 2022, 16:07 pm Hola! Tengo una duda que es muy de principiante y que hasta hoy he podido ir esquivando, pero que ha llegado el momento de saber.
Se trata del paso de parámetros a una función. Siguiendo este ejemplo vemos que los parámetros b y c son opcionales Código
Por lo que yo puedo llamar la función de esta manera: Código
Mi pregunta es: ¿Si a la hora de llamar la función yo quiero darle valor al parámetro c pero no quiero darle valor al parámetro b, cómo debo llamarla? Porque si hago esto: Código
¿Cómo sabe la función si me estoy refiriendo al parámetro b o c? Gracias de antemano. Título: Re: Duda sobre cómo pasar parámetros a una función Publicado por: MCKSys Argentina en 5 Octubre 2022, 17:22 pm Hola!
No soy experto en PHP, pero buscando en google dí con ésto: https://stackoverflow.com/questions/9166914/using-default-arguments-in-a-function (https://stackoverflow.com/questions/9166914/using-default-arguments-in-a-function) Una de las respuestas, dice lo siguiente: Citar Optional arguments only work at the end of a function call. There is no way to specify a value for $y in your function without also specifying $x. Some languages support this via named parameters (VB/C# for example), but not PHP. Por lo que dice, en PHP, debes llamar la función con todos los parámeteros necesarios. En tu caso, si quieres darle valor al parametro c, necesitas darle valor también al parámetro b. No puede llamar una función e inidicarle los parámetros por nombre (como es posible en otros lenguajes, como por ej. python). En tu ultimo ejemplo, la función tomará $valor_c como el valor de b. Saludos! Título: Re: Duda sobre cómo pasar parámetros a una función Publicado por: KateLibby en 5 Octubre 2022, 18:19 pm Muchas gracias!
Título: Re: Duda sobre cómo pasar parámetros a una función Publicado por: Danielㅤ en 5 Octubre 2022, 19:45 pm Hola, si es posible hacer lo que querés, tenes que hacerlo de la siguiente manera:
Código
Un valor de un parámetro puede ser opcional si en la declaración del método le asignamos un valor por defecto, como es el caso del ejemplo del código que nos has dejado: Código
Saludos Título: Re: Duda sobre cómo pasar parámetros a una función Publicado por: MinusFour en 5 Octubre 2022, 21:58 pm Hola! No soy experto en PHP, pero buscando en google dí con ésto: https://stackoverflow.com/questions/9166914/using-default-arguments-in-a-function (https://stackoverflow.com/questions/9166914/using-default-arguments-in-a-function) PHP 8.0 si permite especificar el nombre de los argumentos: https://www.php.net/manual/en/functions.arguments.php#functions.named-arguments Por lo tanto si es posible realizar una omisión del argumento intermediario: Código
Hola, si es posible hacer lo que querés, tenes que hacerlo de la siguiente manera: Código
Un valor de un parámetro puede ser opcional si en la declaración del método le asignamos un valor por defecto, como es el caso del ejemplo del código que nos has dejado: Código
Saludos La página de PHP dice que no es posible hacer esto: Citar The default is used only when the parameter is not specified; in particular, note that passing null does not assign the default value. P.D: los parámetros de la función necesitan empezar con $. Título: Re: Duda sobre cómo pasar parámetros a una función Publicado por: MCKSys Argentina en 5 Octubre 2022, 23:44 pm PHP 8.0 si permite especificar el nombre de los argumentos: https://www.php.net/manual/en/functions.arguments.php#functions.named-arguments Por lo tanto si es posible realizar una omisión del argumento intermediario: Código
Lo dicho! Hola! No soy experto en PHP... :P ;D Saludos! Título: Re: Duda sobre cómo pasar parámetros a una función Publicado por: Danielㅤ en 6 Octubre 2022, 02:47 am Aquí se habla un poco sobre lo relacionado con el tema:
php funciones con argumentos opcionales parámetros valor predeterminado ejemplo https://aprenderaprogramar.com/foros/index.php?topic=4033.0 Saludos Título: Re: Duda sobre cómo pasar parámetros a una función Publicado por: KateLibby en 6 Octubre 2022, 09:31 am Gracias por todas vuestras respuestas.
|