可變函數(shù)(Variable functions)
<?php
function fn(){
echo "fn1...";
}
$f='fn';
$f();//調(diào)用fn();
?>
高階函數(shù)的使用
<?php
//高階函數(shù)定義
function work($cb){
$cb();
}
function fn(){
echo "fn1...";
}
//以String形式傳入回調(diào)函數(shù)
work('fn');
//以Anonymous function方式傳回調(diào)函數(shù)
work(function (){
echo 'fn2...';
});
?>
閉包的運(yùn)用
<?php
function counterFactoryWitCopy($init){
return function () use($init){ //產(chǎn)生一個(gè)副本饵较,不能改變$init
return ++$init;
};
}
function counterFactoryWithClosure($init){
return function () use(&$init){
return ++$init;
};
}
$c1=counterFactoryWitCopy(1);
//兩次調(diào)用會(huì)產(chǎn)生相同的結(jié)果
echo $c1();
echo $c1();
$c2=counterFactoryWithClosure(1);
//兩次調(diào)用會(huì)產(chǎn)生變化的結(jié)果
echo $c2();
echo $c2();
?>
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者