You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.0 KiB

3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
  1. <?php
  2. /**
  3. * 函数内部的无名函数
  4. * 与普通函数一样有返回值
  5. * 可以作为一个变量值使用
  6. * 常用于做回调函数的参数
  7. */
  8. //1 匿名函数作为变量值
  9. $a = function(){
  10. echo 'hello'.PHP_EOL;
  11. return "这是匿名函数的返回值";
  12. };
  13. $a();
  14. echo $a().PHP_EOL; //output:会执行函数里的代码,并且返回返回值
  15. //2 匿名函数的参数
  16. $b=function($var){
  17. echo $var.PHP_EOL;
  18. return "返回".$var;
  19. };
  20. $b("匿名函数的参数");
  21. echo $b("匿名函数的参数").PHP_EOL;
  22. //2 匿名函数作为函数里的函数
  23. function func(){
  24. $b='world';
  25. $innerFunc = function(){
  26. //调用函数func的局部变量
  27. echo $b; //wrong output:Undefined variable: b
  28. };
  29. //调用匿名函数
  30. $innerFunc();
  31. }
  32. // //匿名函数作为参数,回调函数
  33. function mathOpt(function(){return 0;}){
  34. }
  35. ?>