萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> PHP閉包實例解析

PHP閉包實例解析

 通常來說,閉包也就是PHP的匿名函數, 但是和函數不同的是,閉包可以通過use使用函數聲明時所在作用域的變量的值。

具體形式如下:

1 $a = function($arg1, $arg2) use ($variable) {  2 // 聲明函數閉包到變量$a, 參數為$arg1, $arg2 ,該閉包需使用$variable變量 3 }

具體用法實例如下:

01 <?php 02 $result = 0; 03     04 $one = function() 05 { var_dump($result); }; 06     07 $two = function() use ($result) 08 { var_dump($result); }; // 可以認為 $two這個變量 本身記錄了該函數的聲明以及use使用的變量的值 09     10 $three = function() use (&$result) 11 { var_dump($result); }; 12     13 $result++; 14     15 $one();  // outputs NULL: $result is not in scope 16 $two();  // outputs int(0): $result was copied 17 $three();  // outputs int(1) 18 ?>
copyright © 萬盛學電腦網 all rights reserved