PHP之函数

目录 

1 函数的参数

1.1 值传递

1.2 引用传递

1.3 默认参数

1.4 可变的参数数量

2 可变函数

3 匿名函数

4 递归函数

5 内置函数


1 函数的参数

1.1 值传递

将变量的值传递给函数使用,在函数内对该变量进行修改也不会影响函数外的变量值。

例如:以下函数为值传递,所以最后输出的结果为2和1。

<?php
$a=1;
function add($value){
	$value++;
	echo $value;
}
add($a);
echo $a;
?>

1.2 引用传递

将变量的地址传给函数使用,在函数内改变该变量的值会影响到函数外的变量。

例如:以下的函数为引用传递,需要在变量之前加&,所以最后输出的结果为2和2。

<?php
$a=1;
function add(&$value){
	$value++;
	echo $value;
}
add($a);
echo $a;
?>

1.3 默认参数

定义函数时可以使用常量表达式作为函数的默认参数,调用该函数并没有补全参数时,该函数会自动用默认参数进行补全。

<?php
function get_info($name='brell',$age=21){
	echo $name;
	echo $age;
}
get_info();
?>

1.4 可变的参数数量

在PHP5.6之后的版本中,可以使用省略号‘...’来接收一个可变数量的参数,该参数会以数组的形式传递给函数使用。

<?php
function get_name(...$name){
	var_dump($name);
}
get_name('brell','jaky');
?>

2 可变函数

可以使用变量加()的形式来执行与变量值同名的函数。

<?php
function blessing(){
	echo 'happy new year';
}
$str='blessing';
$str();
?>

3 匿名函数

匿名函数也称为闭包函数,允许函数定义一个未指定函数名称的函数。记得匿名函数需要以分号结尾。

<?php
$learn=function(){
	echo 'Learning php!';
};
$learn();
?>

4 递归函数

递归函数就是函数本身调用本身,需要注意的是递归函数需要一个入口和一个出口,只有入口而没有出口的话会使程序进入死循环。

例如:斐波那契数列1,1,2,3,5,8,13...

公式:f(n)=f(n-1)+f(n-2) {n>1}

<?php
function Fibonacci($n){
	if($n>2){
          $arr[$n]=Fibonacci($n-1)+Fibonacci($n-2);
          return $arr[$n];
	}else{
		return 1;
	}
}
echo Fibonacci(6);
?>

5 内置函数

PHP提供了丰富的函数库,包括图像处理‘音频处理、’目录文件操作、压缩、加密、数据库扩展、日期处理等。

查看PHP内置函数可以使用get_defined_functions();

函数查询:http://php.net/

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值