Blogger Information
Blog 9
fans 1
comment 1
visits 12030
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PHP的函数
大象爱好者的博客
Original
1104 people have browsed it

含义

    函数是一种代码形式。

    函数就是一个具有特定功能的代码片段。

定义

11.png      

       说明:

            1,函数名的命名规则,跟变量名一样;

            2 , 函数名不区分大小写

            3,定义函数的目的就是为了以后能够调用(代码复用);

            4,调用函数,其实就是执行函数中代码;

            5 , 形参,其实就是变量,是只能在该函数内部使用的变量;

            6,  实参,其实就是数据,是会传入函数内部的数据(是一一对应地赋值给形参变量)

函数的执行原理      

       程序总是运行在一个“内存空间”。

       程序开始执行的位置所在的空间,可以称之为“主运行空间”。

       实际上,通常函数外面的那些程序,都是运行在主空间中

       那么,函数的运行,就相对独立了——每个函数的每次调用,都是运行在单独的一个自己的空间中(开辟栈空间)

      22.png

     

        提示:

                 在从主空间进入函数空间的时刻,会先将函数调用时的“实参数据”,赋值(传值)给“形参变量”

          而后,才开始执行函数内部的语句!          

 函数的参数    

          形参

                 就是定义函数的时候,在函数名后的小括号中给出的变量名

                 形参,只能在函数内部使用——即该变量的使用范围仅仅局限于当前函数内部。

                 形参的本质是变量!

         实参

               就是调用函数的时候,在函数名后的小括号中给出的数据值,传递给形参的值

               实参的本质是数据!


         函数参数的传值方式

                含义:实参变量的值,以什么方式传给形参。

                说明:

                         其前提是:实参是一个变量的情况。

                         所以其实这里讨论的是:两个变量的传值方式问题。

                         默认情况下是值传递

                       可以使用“&”符号设定为引用传递,形式如下:

                     function  f1( $p1, &$p2, .... ){  

                                          。。。。。

                       }

                此时,在函数内部,对该形参变量改变其值,则对应的实参变量(在函数外部)的值也改变了。

          形参的默认值       

                    形参可以设定默认值。形式为:$形参名 = 某值。

                    设定默认值的形参,只能放在没有设定默认值的形参的后面(右边)

                    设定了默认值的形参对应的实参可以不提供数据,此时函数就会使用该默认值当做实参的值。

                    function  f1($p1,  $p2,  $p3 = 3,  $p4 =true ){

                            //函数体语句块

                    }

                  则此时调用上述函数,以下形式都可以:

                  f1(1,2);

                  f1(3, 4, 5);

                  f1(6,7,8, 9);

函数的返回值    

             一个函数在执行结束时,可以让其返回一个数据,这就是函数的返回值。

            语法:

                 return  要返回的数据

           说明:

                   1,一般情况下一个函数执行结束都是需要返回一个数据值的。

                   2,函数也可以在执行的中途返回数据,此时,函数也是结束了的。

                   3,一个函数执行得到的返回值,可以在任何需要数据的场合使用,跟使用一个变量数据一样。

 

            结论:只要执行到return语句,函数就会结束,是否返回数据,看该行代码

可变函数

           函数名是一个变量。(这个变量的值是一个函数名)。

           可变函数实际上就是在调用函数的时候,使用一个变量来表示函数名,并用该变量去调用函数。

           注意:定义函数的时候,不可以使用可变函数名!

          对比:

                可变变量,就是变量名是一个变量,比如:$$v1;

                可变函数,就是函数名是一个变量,比如:

                   调用函数f1的语法是这样:f1();

                  可以使用可变函数的语法来调用: $func_name = “f1”;  $func_name(); //此时实际就是调用f1

       可变函数的本质是:一个变量的内容是一个字符串,该字符串是一个函数的名字,比如:

          function  f1(){ ....... }

          function  f2(){ ....... }

          $f  = “f1”;

          $f();  //调用了函数f1,这就是可变函数!!

           $f  = “f2”;

           $f();  //调用了函数f2,这就是可变函数!!

           $f = “f3”;

           $f();  //报错!因为没有f3这个函数,实际是,就是相当于: f3();

      33.png 匿名函数

            就是一个“定义时没有名字”的函数。

            此时,就面临一个问题,那就是:没有名字,怎么调用呢?

            实际上,此时它通过另一个方式来调用,如下所示:

            $f1 = function   (形参...) {  .......  };  //这是定义匿名函数的形式。

            $f1(实参); //这就是调用该调用。可见其调用,跟可变函数的写法非常类似。

            匿名函数通常被用作函数的参数。

               555.png


            

            



      

           


   



Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post