Heim  >  Artikel  >  Backend-Entwicklung  >  Detailliertes Beispiel dafür, wie eine PHP-Funktion eine variable Anzahl von Parametern verwendet

Detailliertes Beispiel dafür, wie eine PHP-Funktion eine variable Anzahl von Parametern verwendet

黄舟
黄舟Original
2017-09-07 10:09:351490Durchsuche

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

Verwenden Sie in PHP5.5 und früheren Versionen die Funktionen 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:

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
        )

)



in php5.6 und höher In der Version kann es mit der Syntax implementiert werden.

Beispiel 1: Verwenden Sie...$args, um eine beliebige Anzahl von Parametern zu ersetzen

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

Das Ausgabeergebnis ist das gleiche wie bei PHP5 .5 Die Funktionen func_num_args(), func_get_arg() und func_get_args() sind konsistent.


Beispiel 2: Array in Parameterliste konvertieren

<?php
function add($a, $b){
    echo $a + $b;
}$args = array(1, 2);

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

Beispiel 3: Einige Parameter sind angegeben, die Anzahl der anderen Parameter ist variabel

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

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
        )

)

Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel dafür, wie eine PHP-Funktion eine variable Anzahl von Parametern verwendet. 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