【笔记】PHP的函数

前言

PHP的函数学习笔记

定义函数

函数的参数列表

定义无参数列表的函数

1
2
3
function 函数名() {
...
}

定义有参数列表的函数

1
2
3
function 函数名(参数列表) {
...
}

函数的返回值

定义有返回值的函数

  • 有使用return关键字定义返回值的函数,被调用后返回返回值
1
2
3
4
function 函数名() {
...
return 返回值;
}

定义无返回值的参数

  • 没有使用return关键字定义返回值的函数默认返回值为null
1
2
3
4
5
6
7
8
function 函数名() {
...
}

function 函数名() {
...
return;
}

调用函数

调用无参数列表的函数

  • 调用无参数列表的函数不需要传递参数
1
变量名();

调用有参数列表的函数

  • 调用有参数列表的函数需要按参数列表的顺序传递实际参数
1
变量名($参数);

函数参数的传递

按值传递参数(缺省值)

  • 对形参的操作不会对实参产生影响
1
2
3
4
5
function 函数名($形参){
...
}

函数名($实参);

按引用传递参数

  • 对形参的操作会对实参产生影响
1
2
3
4
5
function 函数名(&$形参){
...
}

函数名($实参);

参数的默认值

  • 如果没有给有参数列表的函数传递参数,形参会取默认值作为实参
  • 不可以只给部分实参,要么全给实参(使用实参作为值),要么全不给实参(使用默认值)
1
2
3
4
5
function 函数名($形参=默认值){
...
}

函数名();

超过形参个数的实参会被舍弃

1
2
3
4
5
function 函数名($形参){
...
}

函数名($实参1, $实参2);

如果需要使用超过形参个数的实参

  • 使用内置函数func_get_arg()来捕获指定索引的实参

<index>:实参的索引,从0开始

1
2
3
4
5
function 函数名(){
func_get_arg(<index>);
}

函数名(实参1);
  • 使用内置函数func_get_args()来捕获所有实参的数组
1
2
3
4
5
function 函数名(){
func_get_args();
}

函数名(实参1);
  • 使用内置函数func_num_args()来捕获所有实参的个数
1
2
3
4
5
function 函数名(){
func_num_args();
}

函数名(实参1);

函数内部调用全局变量

  • 函数内部调用全局变量需要使用global关键字,被global关键字定义的全局变量可以在函数内直接使用
1
2
3
4
5
$全局变量 = 变量值;

function 函数名() {
global $全局变量;
}

函数内部调用全局常量

  • 常量的作用域是超全局
1
2
3
4
5
define("常量名", "常量值");

function 函数名() {
常量名;
}

函数内部定义静态变量

  • 使用static关键字修饰的变量是静态变量
  • 函数内部定义的静态变量只会在第一次调用函数时创建一次,之后不会再次创建
1
2
3
function 函数名() {
static 变量名;
}

可变函数

  • 将函数赋值给变量,利用变量名执行函数
1
2
$变量名 = 函数名();
$变量名();

递归函数

  • 函数自己调用自己
1
2
3
function 函数名() {
函数名();
}

PHP的内置函数

PHP探针

  • 展示所有PHP的配置信息及环境信息
1
phpinfo();

打印数据的类型和值

1
var_dump($变量名);

结束脚本执行

1
2
3
die();

exit();

完成

参考文献

哔哩哔哩——千锋教育网络安全学院