Maison  >  Article  >  développement back-end  >  Contenu connexe sur les fonctions php utilisant un nombre variable de paramètres

Contenu connexe sur les fonctions php utilisant un nombre variable de paramètres

jacklove
jackloveoriginal
2018-06-08 17:36:111251parcourir

php prend en charge un nombre variable de listes de paramètres dans les fonctions définies par l'utilisateur.

Dans php5.5 et versions antérieures, utilisez les fonctions func_num_args(), func_get_arg(), func_get_args().

<?phpfunction 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(&#39;a&#39;);
myfunc(1, 2, 3);
myfunc(array(&#39;d&#39;,&#39;e&#39;), array(&#39;f&#39;));?>

Sortie :

1aArray(
    [0] => a
)31Array(
    [0] => 1
    [1] => 2
    [2] => 3)2Array(
    [0] => d
    [1] => e
)Array(
    [0] => Array
        (
            [0] => d
            [1] => e
        )

    [1] => Array
        (
            [0] => f
        )

)

Dans php5.6 et supérieur, vous pouvez utiliser implémentation de la syntaxe.

Exemple 1 : utilisez...$args pour remplacer n'importe quel nombre de paramètres

<?phpfunction myfunc(...$args){

    // 获取参数数量
    echo count($args).PHP_EOL;    // 获取第一个参数的值:
    print_r($args[0]);    echo PHP_EOL;    // 获取所有参数的值
    print_r($args);    echo PHP_EOL;

}

myfunc(&#39;a&#39;);
myfunc(1, 2, 3);
myfunc(array(&#39;d&#39;,&#39;e&#39;), array(&#39;f&#39;));?>

Le résultat de sortie est le même que celui de php5 .5 en utilisant func_num_args(), func_get_arg(), la fonction func_get_args() est cohérente.


Exemple 2 : Convertir un tableau en liste de paramètres

<?phpfunction 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

<?phpfunction display($name, $tag, ...$args){
    echo &#39;name:&#39;.$name.PHP_EOL;    echo &#39;tag:&#39;.$tag.PHP_EOL;    echo &#39;args:&#39;.PHP_EOL;
    print_r($args);    echo PHP_EOL;
}

display(&#39;fdipzone&#39;, &#39;programmer&#39;);
display(&#39;terry&#39;, &#39;designer&#39;, 1, 2);
display(&#39;aoao&#39;, &#39;tester&#39;, array(&#39;a&#39;,&#39;b&#39;), array(&#39;c&#39;), array(&#39;d&#39;));?>

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
        )

)

Cet article explique les problèmes liés aux fonctions PHP utilisant un nombre variable des paramètres, veuillez faire attention au site Web chinois php pour plus de contenu connexe.

Recommandations associées :

Comment appeler l'API Sina pour générer des liens courts via php

Expliquez le groupe MySQL en triant à l'intérieur la méthode de groupe

Comment utiliser php pour refléter l'API pour obtenir des informations de classe

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn