我正在学习闭包,但我被这个卡住了:
function addPrefix($string) {
return function($prefix) use ($string) {
echo $prefix.$string;
};
}
$randomstring = "a test";
$c = addPrefix($randomstring);
echo $c("This is ");
为什么$prefix是串联的?它甚至没有被称为参数,我只是不明白。
请注意,在您的示例中有两个函数。addPrefix,以及addPrefix返回的匿名函数。
因此,$c
就是这个匿名函数(由addPrefix返回),它有$prefix参数。