Heim  >  Artikel  >  Backend-Entwicklung  >  Die PHP-Funktion verwendet eine Methode mit variabler Anzahl von Parametern

Die PHP-Funktion verwendet eine Methode mit variabler Anzahl von Parametern

不言
不言Original
2018-06-02 11:07:211347Durchsuche

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

php im Benutzer -definierte Funktionen unterstützen eine variable Anzahl von Parameterlisten.

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 ... Syntax verwenden.

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

?>

The Das Ausgabeergebnis ist das gleiche wie bei PHP5. 5 Verwenden Sie die Funktionen func_num_args(), func_get_arg() und func_get_args() 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 werden angegeben, andere Die Anzahl der 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
    )

)

Verwandte Empfehlungen:

php-Funktion mkdir implementiert die Methode der rekursiven Erstellung hierarchischer Verzeichnisse

Das obige ist der detaillierte Inhalt vonDie PHP-Funktion verwendet eine Methode mit variabler 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