搜档网
当前位置:搜档网 › 黑马程序员_PHP_课程同步笔记day18:PHP函数

黑马程序员_PHP_课程同步笔记day18:PHP函数

黑马程序员_PHP_课程同步笔记day18:PHP函数
黑马程序员_PHP_课程同步笔记day18:PHP函数

【黑马程序员】PHP课程同步笔记day18:PHP函数PHP函数

1.概念

将一段常用的功能代码,进行封装,然后起个名字,叫”函数”

使用函数,可以减少我们的工作量。对于后期的项目维护,十分方便。

2.函数定义格式

Function functionName(形参1,形参2,形参3......){

函数的功能代码

[return 参数r]

}

函数语法格式说明:

Function是系统关键字,不分大小写。

functionName是自定义的函数名称。函数名的命名规则与变量一样,只是不加$符号。

()定义函数时的参数,该参数又称为”形参”。

形式参数:主要用来接收调用函数者,传递过来的数据。

形参可以是多个,多个形参之间用逗号隔开,也可以没有形参

形参其实就是一个变量的名称,主要用来临时存储数据的。

{}是函数的功能代码。

Return语句:

向谁返回内容?谁调用了该函数,就向谁返回。

返回什么内容?该内容的类型不限制,可以是任何数据类型

Return语句,一旦执行,函数将中止。也就是return语句之后的函数代码不再执行。

Return 语句返回一个值,并退出函数。

3.函数调用

函数定义是不会自动执行的。

函数必须要经过调用,才能看到结果

调用函数和定义函数不分顺序。

4.函数参数

a)形式参数(形参):形参主要用来接收调用函数传递过来的数据。

i.形参一般是变量,不能是具体的值

ii.形参只能在函数内部使用

b)实际参数(实参):向定义函数传递的数据

i.实参可以是具体值,也可以是一个变量

c)形参和实参的个数,一般情况下必须一致

Function showInfo($a){

Echo “OK”;

}

$a = 100;

showInfo($a);

函数参数传递

1.值传递(拷贝传值)

将一个变量的值,”拷贝”一份,传给形参

在函数内部,对形参进行了修改,而函数外的这个变量不会改变

函数内的形参,与函数外的实参,是相互独立的,没有任何联系的

在PHP中,默认”值传递”的有:字符型、整型、浮点型、布尔型、数组、NULL

2.引用传递

将一个变量的地址传给形参,即形参与变量指向的是”同一物”.

变量和参数之间是相互联系,修改一个,另一个会跟着变。

参数在使用引用传递时,需要在”形参”前加一个”&”符号。”实参”前不能添加。

默认引用传地址:资源和对象

3.默认参数

PHP支持默认参数。

当实参格式少于形参个数时,那么少的那个实参可以用末日的形参来代替

匿名函数

1.概念

没有名字的函数就是匿名函数,它不能单独定义也不能单独调用

匿名函数一般用来给其他变量赋值的。

2.匿名函数的两种用法

i.将匿名函数当成一个数据,赋给其他变量

ii.将匿名函数作为函数的参数来使用

变量作用域

变量作用域:就是变量生效的范围

在PHP中三种变量作用域:全局变量、局部变量、超全局变量。

1.全局变量

全局变量:在函数外部定义的变量,称为”全局变量”。

全局变量,在网页执行完毕,就消失了。

在JS中,全局变量,可以直接在函数内部来使用

在PHP中,全局变量不能直接在函数内部使用

2.局部变量

局部变量:在函数内部定义的变量,称为”局部变量”。

局部变量,只能在函数内部来使用

局部变量,在函数执行完毕后就消失了。

3.在局部作用域中访问全局变量---global关键字

Global关键字,只能在函数内部来使用

不能在使用global关键字时,直接给变量赋值。只能是先声明为全局,再赋值。$GLOBALS超全局数组

“超全局数组变量”可以在网页的任何地方使用,包括函数内部和函数外部。

$GLOBALS超全局数组中包含的内容有:$_GET、$_POST、$_COOKIE、$_FILES

相关主题