web-dev-qa-db-fra.com

Colon après déclaration de méthode?

public function getRecords(int $id): array;

Salut, quelqu'un peut-il me dire ce que deux points font ici, dans cette déclaration de méthode à l'intérieur de l'interface PHP? Est-ce PHP 7 syntaxe et quel tableau signifie ici? La méthode doit retourner un tableau ou autre chose?

30
Vikast

Oui, c'est une nouvelle syntaxe introduite dans PHP 7 pour déclarer que la méthode retourne un tableau.

http://php.net/manual/en/functions.returning-values.php#functions.returning-values.type-declaration

28
fire

Celles-ci sont appelées déclarations de type de retour en PHP7. Il indique le type de valeur renvoyé par la fonction et n'est pas limité aux tableaux. Par exemple, vous pouvez utiliser float, int ou même votre propre classe:

class MyClass { }

function something(): MyClass {
    return new MyClass();
}

Ce ne sont pas seulement pour la lisibilité. Si la fonction renvoie un type autre que celui indiqué, la valeur sera contrainte dans le type indiqué. S'il ne peut pas être contraint ou si le mode strict est activé, une erreur de type sera levée.

21
MrCode