Heim  >  Artikel  >  Backend-Entwicklung  >  Wie übergebe ich ein Array als Argumente an eine Funktion in PHP?

Wie übergebe ich ein Array als Argumente an eine Funktion in PHP?

DDD
DDDOriginal
2024-11-10 06:03:02780Durchsuche

How to Pass an Array as Arguments to a Function in PHP?

Ein Array als Argumente übergeben, nicht als Array

In PHP gibt es Möglichkeiten, ein Array als Liste von Argumenten an a zu übergeben Funktion. Dies kann mit dem Spread-Operator (...) oder call_user_func_array() erreicht werden. Lassen Sie uns die Methoden erkunden:

Spread-Operator (eingeführt in PHP 5.6)

Der Spread-Operator, auch bekannt als „Splat-Operator“, ist eine prägnante und leistungsstarke Methode um ein Array als Argumente zu entpacken.

function variadic(...$args) {
    echo implode(' ', $args);
}

$array = ['Hello', 'World'];

// Splatting the $array
variadic(...$array); // Output: 'Hello World'

Beachten Sie, dass indizierte Array-Elemente Argumenten basierend auf ihren zugeordnet werden Position, nicht Schlüssel.

call_user_func_array()

call_user_func_array() ist eine weniger effiziente, aber dennoch nützliche Methode zum Übergeben eines Arrays als Argumente.

function variadic($arg1, $arg2) {
    echo $arg1 . ' ' . $arg2;
}

$array = ['Hello', 'World'];

// Using call_user_func_array()
call_user_func_array('variadic', $array); // Output: 'Hello World'

In PHP 8 können Sie benannte Argumente nutzen, wenn Sie den Spread-Operator mit Assoziativ verwenden Arrays:

function variadic(string $arg2, string $arg1) {
    echo $arg1 . ' ' . $arg2;
}

$array = ['arg2' => 'Hello', 'arg1' => 'World'];

variadic(...$array); // Output: 'World Hello'

Der Spread-Operator ist aufgrund seiner überlegenen Leistung und Benutzerfreundlichkeit die empfohlene Methode.

Das obige ist der detaillierte Inhalt vonWie übergebe ich ein Array als Argumente an eine Funktion in PHP?. 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