Paramètres de fonction avec plusieurs types

Fermé
Luc52 - 22 mars 2023 à 09:45
jordane45 Messages postés 38299 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 novembre 2024 - 22 mars 2023 à 09:51

Bonjour,

Même si ce n'est pas obligatoire on peut désormais typer les paramètres d'une fonction, ce qui permet de vérifier la cohérence des paramètres.

Mais est-ce qu'on peut indiquer qu'un paramètre peut avoir plusieurs types ?

Par exemple, 

declare(strict_types = 1);

function setValue (string $key, string|int $value) {
 $arr[$key] = $value;
}

Ca permettrait de faire

setValue ("key1", "val1");
setValue ("key2", 3);

Mais provoquerait une erreur sur 

setValue("key4", true);
setValue("key5", 12.35);

Idem en retour de fonction 

function getValue (string $key): string|int {
 return $arr[$key];
}

La doc PHP n'est pas claire là-dessus. 

Merci pour vos réponses

A voir également:

1 réponse

jordane45 Messages postés 38299 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 novembre 2024 4 704
22 mars 2023 à 09:51
0