php函数的种类与调用方法大揭密

天蓬老师
Freigeben: 2023-03-07 16:54:02
Original
2098 人浏览过

PHP中的函数看上去很简单,实际上功能非常强大,我这里按函数名称是否固定,可以分为以下三大类:

一、名称固定的函数:

这类函数,也叫:常规函数,直接用关键字function来创建,也是大家最熟悉的类型,例如:

';
function add($a, $b){return $a.'+'.$b.'='.($a+$b);};
echo add(5,6);
echo '
';
Nach dem Login kopieren

执行返回:

1.用function关键字创建常规函数,按函数名称调用:
5+6=11
Nach dem Login kopieren

 二、名称动态设置的函数:

这类函数有很多种称呼,例如:匿名函数、可变函数、变量函数、闭包函数等,其实都一样的,大家别被名称吓住了。

这种动态设置的函数,是用引用这个函数的变量名来调用,所以非常适合放在回调函数中使用~~

为了教学需要,我这里统称为:匿名函数吧。

匿名函数的创建主要有二种方法,有的教材分开来说了,我这也分开吧。

1、创建方法一:用PHP内置的create_function(参数表,函数体)函数完成,这个函数有二个参数,这二参数必须放在引号中,别问为什么,PHP就是这样规定的,如果不服,那你创造出一个编程语言吧~~

//2.用系统函数create_function()来创建一个匿名函数/可变函数/变量函数/闭包函数echo 
'2.用内置create_function()函数创建匿名函数,用变量名调用:
'; $func1 = create_function('$a,$b','return $a.\'+\'.$b.\'=\'.($a+$b);'); echo $func1(5,6); echo '
';
Nach dem Login kopieren

执行返回:

2.用内置create_function()函数创建匿名函数,用变量名调用:
5+6=11
Nach dem Login kopieren

2、创建方法二:用function关键字来创建,创建过程与常规函数一样,不同之处在于,它出现在值的位置上,也就是'='等号的右边。将创建好的函数整体赋给一个变量;

//3匿名函数:也叫闭包函数,将函数做为值赋给一个变量echo
'3.用function关键字创建匿名函数,用变量名调用:
'; $func2 = function ($a, $b){return $a.'+'.$b.'='.($a+$b);}; echo $func2(5,6); echo '
';
Nach dem Login kopieren

执行返回:

3.用function关键字创建匿名函数,用变量名调用:
5+6=11
Nach dem Login kopieren

三、没有函数名称,创建完直接传参调用执行:

这类函数,它也匿名函数很像,但更加的粗暴,创建好直接用括号一包,传上参数就可以调用了,所以这类函数根本不需要名字,属于一次性的函数。就像一次用品,用完就扔掉了。

//4自执行函数:创建完立即执行不必明示调用
echo '4.用function关键字创建匿名函数,然后直接传参调用执行:
'; echo (function ($a,$b){return $a.'+'.$b.'='.($a+$b);})(5,6);   //自运行的匿名函数
Nach dem Login kopieren

执行返回:

4.用function关键字创建匿名函数,然后直接传参调用执行:
5+6=11
Nach dem Login kopieren

 总结(非常重要,不得不看):

php中,函数的使用还是非常灵活的,但不论如何,函数,归根到底,还是一个处理过程。同时,也必须要有一个返回值,才能让用户感知它的存在,也及它的价值!

所以,函数总是当做一个值来使用,因此,不能出现在等号'='的左边,这就是函数与语言结构的最大区别。

例如,我们常说:echo()和list()是一个语言结构,不是一个函数,尽管看上去长得与函数一样,就是因为它们可以放在等号的左边,可以接受赋值。而函数不行。希望这篇文章,让你对函数有更深的理解~~

以上是php函数的种类与调用方法大揭密的详细内容。更多信息请关注PHP中文网其他相关文章!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!