手记

19、闭包

1、闭包函数

在php里面又叫匿名函数,即创建一个没有指定名称的函数。它可以赋值给变量,还能像其他任何PHP函数对象那样传递。不过匿名函数仍然是函数,因此可以调用,还可以传入参数,适合作为函数或方法的回调

  • 例子1

<?php

$greet = function($name)

{

printf(“Hello %s\r\n”, $name);

};

$greet(‘World’);

  • 运行结果

  • 例子2

<?php

function func()

{

return function($param){

echo $param,’–>bibao->’,PHP_EOL;

};

}

$func = func();

$func(‘hello’);

  • 运行结果

2、use关键字

在闭包场景中,use 可以看成是连接外界的一个最关键的点,类似于连接河两岸的桥。起到连接外部变量与闭包函数。即使闭包所在的环境的不存在了,闭包中封装的状态依然存在

  • 例子

<?php

$message = ‘hello’;

$example = function () use (&$message) {

echo $message,PHP_EOL;

};

$example();

$message = ‘hello world.’;

$example();

  • 运行结果

2人推荐
随时随地看视频
慕课网APP