Une fonction de fermeture en PHP est une fonction anonyme imbriquée dans une autre fonction qui peut accéder aux variables de la fonction externe. Le mot-clé use peut être utilisé pour accéder à des variables externes dans la fonction de fermeture, qui peuvent être appliquées dans des scénarios réels où des remises doivent être appliquées à chaque élément de la liste.
Fonctions de fermeture dans les fonctions PHP
Une fonction de fermeture est une fonction anonyme imbriquée dans une autre fonction qui peut accéder aux variables de la fonction externe, même si la fonction externe est revenue. Les fonctions de fermeture sont très utiles en PHP car elles permettent de créer des blocs de code réutilisables et de maintenir l'accès à l'environnement externe.
Création d'une fonction de fermeture
Pour créer une fonction de fermeture en PHP, utilisez le mot-clé function
, suivi d'un nom et d'une liste d'arguments facultatifs : function
关键字,后跟一个可选的名称和参数列表:
$closure = function($arg1, $arg2) { // 函数体 };
闭包函数中的变量范围规则如下:
use
。使用 use
关键字
use
function outerFunction($arg1) { $outerVar = '外部变量'; $closure = function() use ($arg1, $outerVar) { // 闭包函数可以访问 $arg1 和 $outerVar }; }
use
dans la fonction de fermeture. use
Le mot-clé use
est utilisé pour introduire des variables externes dans la fonction de fermeture. Par exemple : function applyDiscount($list, $discountPercentage) { // 创建闭包函数来计算折扣 $discountClosure = function($item) use ($discountPercentage) { return $item - ($item * ($discountPercentage / 100)); }; // 将折扣闭包函数应用于列表中的每个元素 return array_map($discountClosure, $list); }
function outerFunction($arg1) { $outerVar = '外部变量'; $closure = function() use ($arg1, $outerVar) { // 闭包函数可以访问 $arg1 和 $outerVar echo "arg1: $arg1<br>"; echo "outerVar: $outerVar<br>"; }; // 调用闭包函数 $closure(); } applyDiscount([10, 20, 30], 10); // [9, 18, 27]
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!