varios valores texto remove otro otra manejo llamar leer funcion ejemplos desde carpeta archivos archivo php function parameters parameter-passing param

valores - manejo de archivos en php ejemplos



Cómo trabajar con argumentos infinitos en una función(como el archivo de PHP()) (4)

¿Sabes cómo el isset() PHP puede aceptar múltiples argumentos (sin límite alguno)?

Como puedo hacer:

isset($var1,$var2,$var3,$var4,$var5,$var6,$var7,$var8,$var9,$var10,$var11); //etc etc

¿Cómo podría hacer eso en mi propia función? ¿Cómo podría trabajar con infinitos argumentos pasados?

¿Cómo lo hicieron?



Llamar a func_get_args dentro de su función devolverá una matriz de los argumentos pasados ​​a PHP.


Puedes usar func_get_args() , devolverá una matriz de argumentos.

function work_with_arguments() { echo implode(", ", func_get_args()); } work_with_arguments("Hello", "World"); //Outputs: Hello, World


func_get_args hará lo que quieras:

function infinite_parameters() { foreach (func_get_args() as $param) { echo "Param is $param" . PHP_EOL; } }

También puede usar func_get_arg para obtener un parámetro específico (está indexado a cero):

function infinite_parameters() { echo func_get_arg(2); }

Pero tenga cuidado de comprobar que tiene ese parámetro:

function infinite_parameters() { if (func_num_args() < 3) { throw new BadFunctionCallException("Not enough parameters!"); } }

Incluso se pueden mezclar los parámetros func_*_arg y regulares:

function foo($param1, $param2) { echo $param1; // Works as normal echo func_get_arg(0); // Gets $param1 if (func_num_args() >= 3) { echo func_get_arg(2); } }

Pero antes de usarlo, piensa si realmente quieres tener parámetros indefinidos. ¿No sería suficiente una matriz?