• 【PHP】函数


    一、      数学中的函数:

      a)    sin()、cos()、tan()、log() 这些都是数学函数,但是都已经忘了啥意思了!没关系,在php当中的函数和这些函数的概念还是有一定的区别的

    二、      生活中的函数:

      a)    定义:某一个具有名字的工具,它能够完成一些指定的任务!这样的东西,我们就可以称之为一个函数!

      b)    举个例子:

                   i.         石头:它的名字就是石头,它的作用就是砸核桃,攻击!

                  ii.         长矛:它的名字就是长矛,它的作用是插、扎、刺、砍!

                 iii.         打火机:它的名字就是打火机,它的作用就是点烟,点火,放炮……

                 iv.         小米:它的名字是小米,它的作用可以吃,还可以打电话!

                  v.         锤子:它的名字是锤子,它的作用可以钉钉子,还可以打电话,按摩

                 vi.         三星:它的名字是三星,它的作用可以打电话,爆破!

    三、      为啥要使用函数?

      a)    1.使用函数可以让我们的工作效率更高【代码效率更高】

      b)    2.它能够使我们的代码更简洁

      c)    3.它更易于维护!

    四、      PHP当中的函数:

      a)    定义:能够完成指定任务的,还得是已命名的代码块,这就是php当中的函数!

      b)    函数的分类:

        i.系统函数:

          1.    其实我们已经见过了很多的系统函数了!但是之前我都叫他小工具!我都是昧着良心叫的

          2.    例如:var_dump()、isset()、empty()、settype()、gettype()、is_int()、is_float()……………这些系统已经定义好的函数,都是系统函数!

          3.    如何来使用一个系统该函数(看手册)?

            a)    看函数的功能

            b)    看函数的参数

            c)    看函数的返回值

            d)    看函数的一些实例

        ii.         自定义函数:

          1.    需要自己手动去创造的函数,就属于自定义函数,它是系统函数当中不存在的那些函数!

    五、      你的第一个自定义函数:

      a)    定义函数的几个步骤:

                    i.         写程序代码

                   ii.         给程序代码外面加上花括号

                  iii.         花括号前方起了一个名字,并且加上了小括号

                  iv.         最后才在最前方加上了function关键

      b)    关于函数的命名规则:

                    i.         字母数字下划线组成、不能使用数字开头,不区分大小写,不能重复定义,不能使用关键字命名!

      c)    关于函数的使用方法:

                    i.         直接将函数名字拿过来用即可

                   ii.         Function 函数名(参数1[,参数2,参数3,…]){

              函数体;

                  iii.         }

                  iv.         使用:函数名()

       d)    关于函数的参数:

        i. 形参:

          1.    定义:形式上的参数

          2.    形参,是我们在定义一个函数的时候,写在函数名后方小括号当中的变量的内容

          3.    形参可以定义多个,但是一定要有意义

          4.    多个形参之间使用逗号隔开

          5.    形参的个数可以使无数个

        ii.实参:

          1.    定义:实际上的参数

          2.    实参,是我们在调用一个函数的时候,写在小括号当中的实际内容

          3.    实参也可以定义多个,但是一定要和形参是一一对应的!

          4.    实参之间也是使用逗号隔开的!

          5.    实参的值也可以是存值的变量

        iii.         默认值:

          1.    在某些情况下,函数的某一个参数可能是固定的值不变,因此这种情况下,我们通常胡给定那个参数一个默认值!

          2.    只有形参当中有默认值的情况下,实参和形参的数量可以不一一对应,这是一个例外情况

          3.    拥有默认值的形参,必须放到参数列表的后方

          4.    拥有默认值的形参,实参处可以不给定值,但是,如果实参处给定了具体的值,则实参的值会覆盖形参的值

        iv.         函数的使用位置:

          1.    函数的使用可以在函数之前,也可以在函数之后

          2.    原因:当程序执行某一个脚本,会将脚本当中的所有函数存放到缓冲区当中,缓冲区是内存当中的一个区块,所以,无论在当前脚本的任何位置,都是可以调用缓冲区当中的函数的!

        v.         函数当中的return关键字:

          1.    我们通常使用的函数,都是将结果保存下来,而非直接输出,因此,在函数中使用return关键字,可以将结果返回到调用处,并且保存下来!

          2.    Return后面的代码一概不执行,在PHP当中不会报错,但是在JAVA当中会直接报错,并告诉你,这里的代码是永远无法到达的代码,建议删除!

        vi.         变量的作用域:

          1.    因为函数的出现,导致了变量作用域的不同!

          2.    全局变量

            a)    定义:在php脚本当中所定义的变量就属于全局变量!

            b)    全局变量作用域当前整个脚本!

            c)    在函数当中如果想要使用一个全局变量,需要使用global关键字来将外部的全局变量叫到函数内部

          3.    局部变量

            a)    定义:在函数当中所定义的变量,叫做局部变量!

            b)    局部变量只作用于函数内部!

          4.    静态变量(了解!)

            a)    定义:在函数当中使用static关键字声明的变量就属于一个静态变量。

            b)    静态变量会保留上次执行完的结果,而且静态变量在函数中赋初值的操作只执行一次!

            c)    原理:当第一次调用拥有静态变量的函数,静态变量的值会直接存储到静态区当中,当下一次在调用该函数的时候,会首先去静态区当中寻找是否已经拥有该静态变量,如果有直接拿过来使用。

          5.    超全局变量(了解):

            a)    $GLOBALS:包含所有的超全局变量!

              1.    $_SERVER:服务器和执行环境信息

              2.    $_GET:通过URL参数传递给当前脚本的变量的数组

              3.    $_POST:通过HTTP POST方法传递给当前脚本的变量

              4.    $_FILES:保存文件的上传信息

              5.    $_COOKIE:通过HTTP Cookies方式传递给当前脚本的信息

              6.    $_SESSION:当前脚本可用 SESSION 变量的数组

              7.    $_REQUEST:包含GET、POST和COOKIE信息的集合

          vii.关于函数库的引入:

            1.    函数库其实就相当于一个工具箱,当我们需要使用工具箱当中的某一个工具的时候,直接将工具箱拿过来即可!

            2.    Include(“”)  或  include “”;

              a)    常用于引入一些并非非常重要的函数库

              b)    如果include方法引入文件失败,会提示一个warning级别的错误,但是脚本依然可以执行!

            3.    Require(“”)  或  require “”;

              a)    常用于引入一个对当前脚本非常重要的函数库

              b)    如果require方法引入文件失败,会提示一个Fatal级别的错误,这是致命错误,将会中断整个脚本的执行!

            4.    Include_once

              a)    如果重复引入一个文件,include_once代表只引入一次当前文件!

              b)    其他特点同上!

            5.    Require_once

              a)    如果重复引入一个文件,require_once代表只引入一次当前文件

              b)    其他特点同上!

          viii.可变参数个数的函数!(了解)

            1.    Func_num_args()     获取实参总个数!

            2.    Func_get_args() 获取实参列表的详细信息

            

              在这个列表当中,0-5代表下标,10-60代表对应的值

            3.    Func_get_arg()  获取指定下标的实参信息

          ix.引用函数:

            1 function demo(&$num1){
            2     $num1=200;
            3 }
            4 
            5 $num1=100;
            6 demo($num1);
            7 echo $num1;

            1.    注意:

              a)    使用引用函数概念是,要注意,在实参处存放的值应当是一个变量,而不是一个实际的值,因为值没有地址,变量有地址!

          x.变量函数[ 回调函数 ]:

            1.    定义:将一个函数的名字作为一段字符串,赋值给一个变量,则该变量名可以作为函数名去使用!

          xi.回调函数:(了解!)

            1.    定义:一个函数当中可能会调用另外的一个函数,这就是一个回调函数!

            2.    注意:

              a)    回调函数会使用到变量函数的概念!

              b)    回调函数通常是应用在一些对于主程序的规则限制的作用

          xii.递归函数:

            1.    递:进去

            2.    归:出来

            3.    递归其实就是函数自己玩自己!

  • 相关阅读:
    Eclipse Alt + / 无提示
    洛谷 P1101 单词方阵
    力扣题解 7th 整数反转
    力扣题解 344th 反转字符串
    力扣题解 48th 旋转图像
    力扣题解 36th 有效的数独
    力扣题解 1th 两数之和
    力扣题解 283th 移动零
    力扣题解 66th 加一
    力扣题解 350th 两个数组的交集 II
  • 原文地址:https://www.cnblogs.com/peilanluo/p/6813940.html
Copyright © 2020-2023  润新知