Heim  >  Artikel  >  Backend-Entwicklung  >  Die PHP-Funktion benötigt eine variable Anzahl von Parametern

Die PHP-Funktion benötigt eine variable Anzahl von Parametern

不言
不言Original
2018-04-16 14:18:541328Durchsuche

Dieser Artikel stellt hauptsächlich die Verwendung einer variablen Anzahl von Parametern in PHP-Funktionen vor. Jetzt kann ich ihn mit Ihnen teilen.


php unterstützt eine variable Anzahl von Parameterlisten in benutzerdefinierten Funktionen.

Verwenden Sie in PHP5.5 und früheren Versionen die Funktionsimplementierung 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(&#39;a&#39;);
myfunc(1, 2, 3);
myfunc(array(&#39;d&#39;,&#39;e&#39;), array(&#39;f&#39;));

?>


Ausgabe:

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
        )

)



In php5.6 und höher können Sie die Syntax verwenden.

<br/>
<?php

function 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;));

?>




Beispiel 1: Verwenden Sie...$args anstelle einer beliebigen Anzahl von Argumente


Die Ausgabeergebnisse stimmen mit den in PHP5.5 verwendeten Funktionen func_num_args(), func_get_arg(), func_get_args() überein.

<?php

function add($a, $b){
    echo $a + $b;
}

$args = array(1, 2);

add(...$args); // 输出3

?>



Beispiel 2: Array in Parameterliste konvertieren

<br/>
<?php

function 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;));

?>



Beispiel 3: Einige Parameter sind angegeben und die Anzahl anderer Parameter ist variabel

Ausgabe:

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
        )

)

Verwandte Empfehlungen :

Was ist der Unterschied zwischen der gewöhnlichen Wertübergabe und der Referenzwertübergabe in PHP-Funktionen?

So verwenden Sie statische Variablen in PHP-Funktionen

Das obige ist der detaillierte Inhalt vonDie PHP-Funktion benötigt eine variable Anzahl von Parametern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn