PHP[入门]P10-函数

这是我早期的 php 学习笔记,php 的学习版本版本是 5.6、7,🐟2020/05/06年从有道笔记导出至此。

day10-函数

变量的引用unset其中一个值

常量说常量值是标量类型

在php7.0以后我们的常量值可以是数组

1.为什么要自定义函数

可以提高代码的重用性

提高开发效率

减少了代码的冗余量

定义函数就是封装功能

2.分类:

系统函数

自定义函数

3.自定义函数

定义:

语法格式:

function 函数名([参数列表])

{

函数体;

[return 返回值];

}

调用

函数名([参数列表]);

函数名命名规范:

1.必须以function 开始

2.如同变量一样 ,以数字字母下划线组成 不以数字开始

3.函数不区分大小写 但是要求大家区分大小写

4.函数命名不能使用系统已经定义过的关键字或者系统函数名称

5.命名一般遵从的是小驼峰命名法或者下划线 (根据具体的项目安排)

[注意]:

函数可以重复调用,甚至在函数前边后边(函数是条狗,哪里需要哪里吼)

函数不可以重复定义 即函数不能被重载

如果函数定义了,不调用不执行

参数:【根据实际的需求增加,可以有可以没有】

我们在定义函数时候的小括号里面的参数叫形参

在调用函数的时候小括号里面的实参

如果我们的形参里参数有带默认值的参数,放在参数列表的后边

参数值是可变的,提高了代码的重用性

如果没有形参,调用函数的时候传实参那么不会报错(这种事情瞎子才干)

return:【根据实际需求,可以有可以没有】

调用函数的时候给返回值;

return 返回值;(如果有多个返回值:可以放在数组里或者.拼接);

return 返回值; 当前return结束以后,后边的语句就不再执行

4.变量的作用域

变量可使用的地方

外部变量:就是函数外部的变量

内部变量:就是函数内部的变量

在函数内部不可以使用函数外部的变量

解决方法:

1.使用关键字global 外部变量名(不推荐使用,因为可以在函数内部改变外部变量值)

2 推荐使用的方式

超全局变量:

5.静态变量:

static 关键词 在函数加载的时候定义一次,即使函数执行以后也不会释放,依然存在

6.内部函数:

函数里面还有一个自定义函数

【注】:

只能定义一次解决方式有三种

1.static

2.function_exists

3.is_callable

调用内部函数的时候,只能在函数定义之后调用,不能前边调用

当调用了外变的函数以后,才可以在外部使用内部函数

7.变量函数:

function demo()

{

echo '踏歌长行,梦想永在';

}

// demo();

$str = 'demo';

$str(); //== demo();

8.匿名函数

$str = function ()

{

echo 'youmengxiang';

};

把一个没有名字的函数就是匿名函数 直接赋给一个变量使用

调用方式 变量名();

匿名函数想要使用外部变量的时候 使用use关键词 use(变量名) 如果有多个用逗号隔开

想要在匿名函数内部改变use过来的变量值 在use时候传变量的引用eg: use(&$name)

$str();

9.回调函数:

10.递归函数:

11.引用传参:

12.可变参数类型

func_num_args()

func_get_args()

func_get_arg($i)

...

13.include require include_once require_once

---------------

超全局变量

$GLOBALS

$_REQUEST

$_GET $_POST

$_FILES

$_COOKIE $_SESSION

---------------

错误:

Notice 提示

Warning 警告

Error 错误

----------------

常用数学函数:

abs() 绝对值

max () 最大值

min() 最小值

mt_getrandmax() 最大随机数

pi() 圆周率

pow() x的y次方

round() 浮点数四舍五入

deg2rad() 角度转弧度

rad2deg() 弧度转角度

---------

变量的值传递跟引用传递的区别

//值传递

$num = 10;

$num2 = $num;

//传引用

$num = 10;

$num2 = &$num;

unset($num);

echo $num2;