参数,匿名函数,回调函数,闭包

原创2018-12-19 11:42:07106
摘要:函数分为普通函数,匿名函数和同样没有函数名称的自调用函数。匿名函数其实就是将一个无函数名的函数赋值给变量,因为是变量所以本质上算是一个值。函数的参数分为必选,可选和无参数,当有可选参数和必选参数时先写必选参数,再写可选参数,因为参数本质上是一个占位符,所以可以用系统自带的函数来去参数 占位符是从0开始,所以第一个参数的位置是0回调函数其实就是在一个函数中调用另一个函数,可以调用一个普通函数,也可以

函数分为普通函数,匿名函数和同样没有函数名称的自调用函数。匿名函数其实就是将一个无函数名的函数赋值给变量,因为是变量所以本质上算是一个值。

函数的参数分为必选,可选和无参数,当有可选参数和必选参数时先写必选参数,再写可选参数,因为参数本质上是一个占位符,所以可以用系统自带的函数来去参数 占位符是从0开始,所以第一个参数的位置是0

回调函数其实就是在一个函数中调用另一个函数,可以调用一个普通函数,也可以调用一个匿名函数,因为自己再写一个函数调用函数比较麻烦,所以可以用系统自带的两个函数call_user_func()和call_user_func_array()来调用  因为类中的方法其实相当于函数,所以也可以用回调方法。

匿名函数也是函数,所以有自己的作用域,要用函数外的参数,除了传参,还可以通过匿名函数的关键字use来调用外部变量   因为匿名函数其实就是一个变量,变量可以作为1.局部变量2.函数的参数3.函数的返回值,所以匿名函数也可以,当匿名函数作为这些的时候会形成闭包

<?php

$name = '无忌哥哥';

$test = function()use($name){//匿名函数关键字use调用外部变量$name

    return $name.',我又被当做参数了,你还要我吗?';   

};//这个函数其实就是定义一个变量,后面要加分号

$func2 = function(callable $test){

    return $test();

};

echo $func2($test),'<hr>';//$test这个匿名函数当做参数传给了$func2

//整个形成了一个闭包


批改老师:韦小宝批改时间:2018-12-19 11:44:03
老师总结:写的很不错!课后记得要多多练习哦!继续加油吧!

发布手记

热门词条