Maison > développement back-end > tutoriel php > PHP implémente une méthode pour forcer la spécification du type de rappel en fonction de Callable

PHP implémente une méthode pour forcer la spécification du type de rappel en fonction de Callable

墨辰丷
Libérer: 2023-03-29 07:46:02
original
1571 Les gens l'ont consulté

Cet article présente principalement la méthode pour forcer PHP Callable à spécifier le type de rappel. C'est très bien et a une valeur de référence. Les amis qui en ont besoin peuvent s'y référer

Si une méthode doit accepter un rappel. méthode comme paramètre, nous Vous pouvez écrire comme ceci

<?php
function dosth($callback){
call_user_func($callback);
}
function callback(){
echo &#39;do sth callback&#39;;
}
dosth(&#39;callback&#39;);
?>
Copier après la connexion

Sortie :

faire quelque chose de rappel

Mais nous ne savons pas si la méthode de rappel peut être appelée, donc beaucoup de travail supplémentaire doit être effectué pour vérifier si cette méthode de rappel peut être appelée.

Existe-t-il un meilleur moyen de déterminer si la méthode de rappel est appelable ?
Nous pouvons utiliser callable pour forcer le paramètre à être un type de rappel, ce qui garantit que la méthode de rappel doit être appelable.

Par exemple, la méthode de rappel est une méthode inexistante

<?php
function dosth(callable $callback){
call_user_func($callback);
}
dosth(&#39;abc&#39;);
?>
Copier après la connexion

Après exécution, un message d'erreur s'affiche : TypeError : L'argument 1 passé à dosth () doit être appelable
Le programme ne peut pas exécuter le traitement interne de dosth Le type de paramètre a été vérifié et traité pour la protection.

Et si callable est supprimé

<?php
function dosth($callback){
call_user_func($callback);
}
dosth(&#39;abc&#39;);
?>
Copier après la connexion

après l'exécution, un avertissement s'affiche : Attention : call_user_func() s'attend à ce que le paramètre 1 soit un rappel valide, une fonction 'abc' introuvable ou un nom de fonction invalide

Le programme peut exécuter le traitement interne de dosth, donc beaucoup de travail supplémentaire doit être effectué pour vérifier si la méthode de rappel peut être appelé.

Par conséquent, si le paramètre de la méthode est une méthode de rappel, callable doit être ajouté pour forcer sa spécification comme type de rappel. Cela peut réduire les erreurs d'appel et améliorer la qualité du programme.

Résumé : Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il sera utile à l’étude de chacun.

Recommandations associées :

Opération d'ajout de tableau PHP et la différence avec array_merge

php Détaillée explication de la méthode de gestion des exceptions PDO

Fonction de cryptage intégrée PHP

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal