PHP Callable force la méthode à spécifier le type de rappel

高洛峰
Libérer: 2023-03-04 06:26:02
original
955 Les gens l'ont consulté

Si une méthode doit accepter une méthode de rappel comme paramètre, nous pouvons é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 pouvons pas être sûrs que la méthode de rappel peut être appelée, nous devons donc faire beaucoup de travail supplémentaire pour vérifier si la 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 le 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, fonction 'abc' introuvable ou 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 cette méthode de rappel peut être appelée.

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.

Ce qui précède est la méthode que l'éditeur vous présente pour savoir comment spécifier de manière forcée le type de rappel dans PHP Callable. J'espère que cela vous sera utile. Si vous avez des questions, laissez-moi un message et. l'éditeur vous répondra à temps. Je voudrais également vous remercier tous pour votre soutien au site Web PHP chinois !

Pour plus d'articles sur la façon dont PHP Callable force la spécification du type de rappel, veuillez faire attention au site Web PHP 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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!