Maison >développement back-end >tutoriel php >Le rôle et l'utilisation des indices de type en PHP

Le rôle et l'utilisation des indices de type en PHP

墨辰丷
墨辰丷original
2018-06-09 10:49:031556parcourir

Cet article présente principalement le rôle et l'utilisation des astuces de type en PHP. Les amis intéressés peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Vue d'ensemble

À partir de PHP5, nous pouvons utiliser des indices de type pour spécifier les types de paramètres que la fonction reçoit lors de la définition d'une fonction. Si le type du paramètre est spécifié lors de la définition d'une fonction, alors lorsque nous appelons la fonction, si le type du paramètre réel ne correspond pas au type spécifié, PHP générera une erreur fatale (Catchable fatal error).

Nom de classe et tableau

Lors de la définition d'une fonction, PHP ne prend en charge que deux déclarations de type : le nom de classe et le tableau. Nom de la classe nom de la table Le paramètre réel reçu par ce paramètre est l'objet instancié par la classe correspondante, et le tableau indique que le paramètre réel reçu est un type de tableau. Voici un exemple :

Le code est le suivant :

function demo(array $options){
  var_dump($options);
}


Lors de la définition de la fonction demo(), le type de paramètre reçu par la fonction est spécifié sous forme de tableau . Si lorsque nous appelons une fonction, le paramètre passé n'est pas de type tableau, par exemple, un appel comme celui-ci :

Le code est le suivant :

$options='options';
demo($options);

Alors le suivant une erreur sera générée :

Erreur fatale capturable : l'argument 1 passé à demo() doit être du type tableau, chaîne donnée,

Vous pouvez utiliser null comme paramètre par défaut

Remarque

Une chose qui nécessite une attention particulière est que PHP ne prend en charge que deux types de déclarations de type. Toutes les autres déclarations de type scalaire ne sont pas prises en charge. Par exemple, le code suivant générera un. erreur :

Code comme suit :

function demo(string $str){
}
$str="hello";
demo($str)

Lorsque nous exécutons le code ci-dessus, la chaîne sera traitée comme un nom de classe, donc l'erreur suivante sera signalée :
Catchable fatal erreur : l'argument 1 passé à demo() doit être une instance de chaîne, chaîne donnée,

Résumé

La déclaration de type est également une avancée dans PHP orienté objet, surtout lors de la détection d'exceptions d'un type spécifié, cela fonctionne.
L'utilisation de déclarations de type peut également augmenter la lisibilité du code.
Cependant, comme PHP est un langage faiblement typé, l'utilisation de déclarations de type est contraire à l'intention initiale de la conception PHP.
L'utilisation ou non des déclarations de type est une question d'opinion pour tout le monde. Je suis un noob :).

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'apprentissage de chacun. .

Recommandations associées :

Méthodes php pour les opérations sur les chaînes

Méthodes php pour les opérations sur les fichiers et les chaînes Méthode de cryptage

Méthode PHP pour les dates et les chaînes de fonctionnement

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn