Heim  >  Artikel  >  Backend-Entwicklung  >  Kann die Return-Anweisung in PHP ein Array zurückgeben?

Kann die Return-Anweisung in PHP ein Array zurückgeben?

PHPz
PHPzOriginal
2023-04-23 16:43:501528Durchsuche

In der PHP-Entwicklung verwenden wir häufig Funktionen, um bestimmte Funktionen zu implementieren. Innerhalb der Funktion müssen wir möglicherweise mehrere Werte zurückgeben. In diesem Fall müssen wir ein Array verwenden, um sie einheitlich zurückzugeben. Die Frage ist also: Kann die Return-Anweisung in PHP ein Array zurückgeben? Die Antwort ist ja.

In PHP kann die Return-Anweisung entweder einen Wert oder ein Array zurückgeben. Schauen wir uns an, wie man ein Array zurückgibt.

Index-Array zurückgeben

In PHP ist der häufigste Array-Typ das Index-Array, das Zahlen als Schlüsselwerte der Elemente verwendet. Um ein Index-Array als Rückgabewert einer Funktion zu verwenden, geben Sie einfach den Array-Namen direkt in der Return-Anweisung zurück.

function getSquares($arr){
    $squares = [];
    foreach ($arr as $value) {
        array_push($squares, $value * $value);
    }
    return $squares;
}

$nums = [1, 2, 3, 4, 5];
$squares = getSquares($nums);
print_r($squares); // Array ( [0] => 1 [1] => 4 [2] => 9 [3] => 16 [4] => 25 )

Im obigen Beispiel haben wir eine getSquares()-Funktion definiert, die einen Array-Parameter akzeptiert und ein neues Array zurückgibt, das den Quadratwert jedes Elements im übergebenen Array speichert. Innerhalb der Funktion wird eine foreach-Schleife verwendet, um das übergebene Array zu durchlaufen und den Quadratwert jedes Elements im neuen Array $squares zu speichern. Schließlich geben wir das Array $squares als Rückgabewert der Funktion zurück.

Im Hauptprogramm definieren wir ein $nums-Array, das fünf Zahlen von 1 bis 5 speichert. Wir rufen die Funktion getSquares() auf und übergeben das Array $nums als Parameter. Das resultierende Array $squares ist ein neues Array, das aus den Quadratwerten jedes Elements besteht. Wenn wir die Funktion print_r() verwenden, um das Array $squares auszudrucken, können wir sehen, dass seine Elemente den Quadratwerten der entsprechenden Elemente des ursprünglichen Arrays $nums entsprechen.

Assoziatives Array zurückgeben

Zusätzlich zur Rückgabe eines Index-Arrays kann die Return-Anweisung in PHP auch einen anderen gängigen Array-Typ zurückgeben, nämlich ein assoziatives Array. In assoziativen Arrays verwenden wir Zeichenfolgenschlüsselwerte, um Array-Elemente zu indizieren. Um ein assoziatives Array als Rückgabewert einer Funktion zu verwenden, müssen Sie in ähnlicher Weise nur den Array-Namen direkt in der Return-Anweisung zurückgeben.

function getUserInfo($name){
    $user = [
        'name' => $name,
        'age' => 25,
        'gender' => 'male'
    ];
    return $user;
}

$userInfo = getUserInfo('Tom');
print_r($userInfo); // Array ( [name] => Tom [age] => 25 [gender] => male )

Im obigen Beispiel haben wir eine getUserInfo()-Funktion definiert, die einen $name-Parameter vom Typ String akzeptiert und ein assoziatives Array zurückgibt, das Informationen zum Benutzer speichert, einschließlich $name, $age und $gender. Innerhalb der Funktion wird zunächst ein $user-Array definiert und die oben genannten drei Informationen werden darin gespeichert. Schließlich geben wir das Array $user als Rückgabewert der Funktion zurück.

Im Hauptprogramm rufen wir die Funktion getUserInfo() auf und übergeben „Tom“ als Parameter. Das erhaltene $userInfo-Array enthält die relevanten Informationen des Benutzers. Durch Ausdrucken des $userInfo-Arrays mit der Funktion print_r() können wir sehen, dass der Schlüsselwert, der jeder Information entspricht, korrekt angezeigt wird.

Mehrdimensionale Arrays zurückgeben

Arrays in PHP unterstützen auch mehrdimensionale Arrays, dh Arrays enthalten Arrays. Ähnlich wie in den ersten beiden Fällen müssen Sie in der Return-Anweisung nur das mehrdimensionale Array als Ganzes zurückgeben.

function getStudents(){
    $students = [
        [
            'name' => 'Tom',
            'score' => 90
        ],
        [
            'name' => 'Jerry',
            'score' => 80
        ]
    ];
    return $students;
}

$students = getStudents();
print_r($students); 
/* Array ( 
       [0] => Array ( [name] => Tom [score] => 90 ) 
       [1] => Array ( [name] => Jerry [score] => 80 ) 
    ) 
*/

Im obigen Beispiel haben wir eine getStudents()-Funktion definiert, die ein mehrdimensionales Array zurückgibt, das die Informationen von zwei Schülern enthält. Jeder Schüler wird durch ein assoziatives Array dargestellt, einschließlich zweier Teile „Name“ und „Punktzahl“. Information. Innerhalb der Funktion wird zunächst ein $students-Array als Ganzes definiert, wobei jedes Element die Informationen eines Schülers darstellt. Schließlich geben wir das Array $students als Rückgabewert der Funktion zurück.

Im Hauptprogramm rufen wir die Funktion getStudents() auf und geben das zurückgegebene $students-Array aus. Sie können sehen, dass es zwei Unterarrays enthält, wobei jedes Unterarray Informationen über einen Schüler enthält.

Zusammenfassung

In den oben genannten drei Fällen haben wir erfolgreich Array-Typwerte zurückgegeben. In PHP kann die Return-Anweisung verschiedene Arten von Werten zurückgeben, einschließlich Array-Typen. Wenn eine Funktion mehrere Werte zurückgeben muss, können wir ein Array verwenden, um sie einheitlich zurückzugeben. Wenn Sie ein Array als Rückgabewert einer Funktion verwenden, müssen Sie sicherstellen, dass die Schlüsselwerte und Elementtypen des Arrays mit den erwarteten Ergebnissen des Programms übereinstimmen.

Das obige ist der detaillierte Inhalt vonKann die Return-Anweisung in PHP ein Array zurückgeben?. 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