PHP-Funktionen können Arrays, Objekte oder Klasseninstanzen zurückgeben: 1. Array: Verwenden Sie eckige Klammern; 2. Objekt: Verwenden Sie das Schlüsselwort new, um ein Objekt zu erstellen. 3. Klasseninstanz: Lassen Sie das Schlüsselwort new weg. Praktischer Fall: getUsers() gibt ein Array von Benutzern zurück und createUser() erstellt ein Benutzerobjekt.
PHP-Funktionsrückgabewerttypen: Arrays, Objekte, Klasseninstanzen
PHP-Funktionen können verschiedene Arten von Werten zurückgeben, einschließlich Arrays, Objekte und Klasseninstanzen.
Array
Um ein Array als Funktionswert zurückzugeben, verwenden Sie eckige Klammern:
<?php function getArray(): array { return [1, 2, 3]; } ?>
Object
Um ein Objekt zurückzugeben, erstellen Sie das Objekt mit dem neuen Schlüsselwort wie folgt:
<?php class Person { private $name; public function __construct(string $name) { $this->name = $name; } public function getName(): string { return $this->name; } } function getObject(): Person { return new Person('John Doe'); } ?>
Instanz der Klasse
Die Rückgabe einer Instanz einer Klasse ähnelt der Rückgabe eines Objekts, das neue Schlüsselwort kann jedoch weggelassen werden, wie unten gezeigt:
<?php class Animal { private $species; public function __construct(string $species) { $this->species = $species; } public function getSpecies(): string { return $this->species; } } function getInstance(): Animal { return Animal('Dog'); } ?>
Praktischer Fall
Angenommen, Sie haben eine Funktion, die die Details eines Stapels von abruft Benutzer:
function getUsers(): array { // ... 数据库查询,返回用户数组 }
Um diese Funktion in einem Controller zu verwenden, können Sie:
<?php $users = getUsers(); // 遍历用户数组 foreach ($users as $user) { // ... } ?>
Ebenso, wenn Sie eine Funktion haben, die ein neues Benutzerobjekt erstellt:
function createUser(string $name, string $email): Person { // ... 数据库查询,返回新的用户对象 }
Um diese Funktion in einem Modell zu verwenden, können Sie:
<?php $user = createUser('John Doe', 'john.doe@example.com'); // 访问用户属性 echo $user->getName(); // 输出:John Doe ?>
Das obige ist der detaillierte Inhalt vonKann der Typ des Rückgabewerts einer PHP-Funktion ein Array, ein Objekt oder eine Instanz einer Klasse sein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!