php 闭包使用

网友投稿 240 2022-11-27

php 闭包使用

创建简单闭包

$closure = function ($name){ return sprintf('hello %s',$name);};echo $closure("wl");

结果 hello wl

在array_map函数中使用闭包

$numbersPlusONe = array_map(function ($number){ return "%".$number."%";},[1, 2, 3]);print_r($numbersPlusONe);

结果 Array ( [0] => %1% [1] => %2% [2] => %3% )

使用use关键字附加闭包状态

function enclosePerson($name){ return function ($doCommand) use ($name) { return sprintf('%s , %s',$name,$doCommand); };}//把字符串"clay" 封装到闭包中$clay = enclosePerson("Clay");//传参数,调用闭包echo $clay("get me a tea!");

结果 Clay , get me a tea!

使用bindTo(函数附加闭包状态)

tpl; $closure = function() use($name){ include './tpl/'.$name; }; $closure = $closure->bindTo($obj); return $closure; }}$View = new views();call_user_func($View->render(new Bentian()));call_user_func($View->render(new Yifang()));

两个php文件代码

tpl1.php

';echo $this->title."
";echo '武汉江汉区
';echo '===========================';

tpl2.php

';echo $this->title."
";echo '屯口经济开发区
';echo '===========================';

输出结果

===========================东风本田屯口经济开发区=================================================武汉亿房网武汉江汉区===========================

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:应对互联世界中的通信挑战
下一篇:Java多线程 ThreadLocal原理解析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~