Maison > développement back-end > tutoriel php > Comment puis-je accéder aux variables définies en dehors des fonctions de rappel en PHP ?

Comment puis-je accéder aux variables définies en dehors des fonctions de rappel en PHP ?

Susan Sarandon
Libérer: 2024-12-13 08:12:11
original
843 Les gens l'ont consulté

How Can I Access Variables Defined Outside Callback Functions in PHP?

Accès aux variables calculées en dehors des fonctions de rappel

Lorsque vous travaillez avec des fonctions de rappel, il peut s'avérer nécessaire d'utiliser des variables calculées en dehors de la portée de la fonction . Le mot-clé use fournit une solution à ce défi.

Utilisation du mot-clé 'use'

Pour accéder aux variables externes dans une fonction de rappel, le mot-clé use peut être utilisé. Ce mot-clé permet de déclarer les variables dont vous souhaitez hériter de la scope parent. Par exemple, si vous avez calculé une variable moyenne ($avg) en dehors du rappel, vous pouvez l'utiliser dans la fonction en incluant ce qui suit :

$callback = function($val) use ($avg) { return $val < $avg; };
Copier après la connexion

Alternative : fonctions fléchées (PHP 7.4)

Les fonctions fléchées offrent une approche alternative pour définir des fonctions anonymes. Ils capturent automatiquement les variables de la portée environnante, éliminant ainsi le besoin du mot-clé use. Ainsi, en utilisant notre exemple précédent, vous pouvez écrire :

$callback = fn($val) => $val < $avg;
Copier après la connexion

Intégrer des fonctions de rappel dans la manipulation de tableau

Pour incorporer la fonction de rappel dans une opération de manipulation de tableau, telle en tant que array_filter, vous pouvez faire ce qui suit :

$filtered_array = array_filter($arr, fn($val) => $val < $avg);
Copier après la connexion

Cette approche vous permet de filtrer efficacement les éléments en fonction d'une variable calculée en dehors la fonction de rappel, offrant une plus grande flexibilité dans votre développement 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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal