Cet article présente principalement la méthode d'utilisation d'un nombre variable de paramètres dans les fonctions PHP. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer
PHP défini par l'utilisateur. les fonctions prennent en charge un nombre variable de listes de paramètres.
Dans php5.5 et les versions antérieures, utilisez l'implémentation de la fonction func_num_args(), func_get_arg(), func_get_args().
<?php function myfunc(){ // 获取参数数量 echo func_num_args().PHP_EOL; // 获取第一个参数的值: print_r(func_get_arg(0)); echo PHP_EOL; // 获取所有参数的值 print_r(func_get_args()); echo PHP_EOL; } myfunc('a'); myfunc(1, 2, 3); myfunc(array('d','e'), array('f')); ?>
Sortie :
1 a Array ( [0] => a ) 3 1 Array ( [0] => 1 [1] => 2 [2] => 3 ) 2 Array ( [0] => d [1] => e ) Array ( [0] => Array ( [0] => d [1] => e ) [1] => Array ( [0] => f ) )
en php5. Dans les versions 6 et supérieures, vous pouvez utiliser la syntaxe....
Exemple 1 : utilisez...$args pour remplacer un nombre quelconque d'arguments
<?php function myfunc(...$args){ // 获取参数数量 echo count($args).PHP_EOL; // 获取第一个参数的值: print_r($args[0]); echo PHP_EOL; // 获取所有参数的值 print_r($args); echo PHP_EOL; } myfunc('a'); myfunc(1, 2, 3); myfunc(array('d','e'), array('f')); ?>
Le résultat de sortie est le même car PHP5.5 utilise les fonctions func_num_args(), func_get_arg(), func_get_args() de manière cohérente.
Exemple 2 : Convertir un tableau en liste de paramètres
<?php function add($a, $b){ echo $a + $b; } $args = array(1, 2); add(...$args); // 输出3 ?>
Exemple 3 : Spécification partielle des paramètres , le nombre d'autres paramètres est variable
<?php function display($name, $tag, ...$args){ echo 'name:'.$name.PHP_EOL; echo 'tag:'.$tag.PHP_EOL; echo 'args:'.PHP_EOL; print_r($args); echo PHP_EOL; } display('fdipzone', 'programmer'); display('terry', 'designer', 1, 2); display('aoao', 'tester', array('a','b'), array('c'), array('d')); ?>
Sortie :
name:fdipzone tag:programmer args: Array ( ) name:terry tag:designer args: Array ( [0] => 1 [1] => 2 ) name:aoao tag:tester args: Array ( [0] => Array ( [0] => a [1] => b ) [1] => Array ( [0] => c ) [2] => Array ( [0] => d ) )
Connexe recommandations :
La fonction PHP mkdir implémente la méthode de création récursive de répertoires hiérarchiques
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!