PHP中的函数

本文深入讲解PHP中的函数定义与调用,包括函数的基本语法、参数设置、作用域、高级应用等内容,帮助读者掌握PHP函数的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PHP中的函数的定义与调用

一、初识函数

函数:封装一段用于完成特定功能的代码。

通俗理解函数:可以完成某个工作的代码块,就像小朋友搭房子用的积木一样,可以反复使用,在使用的时候,拿来即用,而不用考虑它的内部构成。

函数的分类:①内置函数(字符串操作函数、数组操作函数)②自定义函数

二、函数的基本语法

function 函数名([ 参数1 , 参数2 , …… ])
{
函数体……
}

函数的定义由以下4部分组成:
1、关键字 function
2、函数名 functionName
3、参数
4、函数体

三、关于函数的部分声明

1、function:在声明函数时必须使用的关键字
2、函数名:要符合 PHP 的标识符,且函数名是唯一的,不区分大小写
3、[参数1, 参数2…]:外界传递给函数的值,它是可选的,多个参数之间使用逗号“,”分隔。
4、函数体:函数定义的主体,专门用于实现特定功能的代码段。
5、返回值:需要使用return关键字将需要返回的数据传递给调用者。

四、function内的参数设置

① 无参函数
对于函数来说,参数的不同设置,决定了其调用和使用方式。

例如:	
function shout()
{
    return 'come on';
}
echo shout();// 输出结果:come on

② 按值传递参数
PHP默认支持按值传递参数,按此种方式定义的函数,在函数内部可以随意对用户传递的参数进行操作。

例如:	
// 方式一
echo add(5, 7);
// 方式二
$x = 5;
$y = 7;
echo add($x, $y);	

③ 引用传参
在开发中,若需要函数修改它的参数值,则需通过函数参数的引用传递。实现方式只需在参数前添加“&”符号即可。

function extra(&$str)
{
	$str .= ' and some extra';
}

④ 设置参数默认值
函数参数在设置时,还可以为其指定默认值,也就是可选参数。当调用者未传递该参数时,函数将使用默认值进行操作。

function say($p, $con = 'say "Hello"')
{
	return "$p $con";
}

⑤ 指定参数类型(弱)
当用户调用函数时,如果传递的参数不是int类型,程序会将其强制的转换为int型后,再进行操作,这种方式称为弱类型参数设置。

function sum1(int $a, int $b)
{
   return $a + $b;
}
echo sum1(2.6, 3.8); // 输出结果:5

⑤ 指定参数类型(强)
除此之外,还可以将其设置为强类型的参数,即当用户传递的参数类型不符合函数的定义,程序会报错提醒。

declare(strict_types = 1);
function sum2(int $a, int $b){
	 return $a + $b;
}
echo sum2(2.6, 3.8); // 输出结果:Fatal error: ......
五、变量的作用域

变量只有在其作用范围内才可以被使用,这个作用范围称为变量的作用域。
在函数中定义的变量称为局部变量
在函数外定义的变量称为全局变量

示例:

function test()
{
	$sum = 36; 	// 局部变量
	return $sum;
}
$sum = 0; 	// 全局变量
echo test();   	// 输出结果:36
echo $sum;          	// 输出结果:0
六、函数的高级应用

1、静态变量
一是在函数中使用全局变量记录,缺点是全局变量可随时在函数外被改变,不能准确的记录;二是在函数中使用静态变量。

function num()
{
	static $i = 1;
	echo $i;
	++$i;
}
2、字符串函数

PHP提供了mb_strlen()函数,用于准确的获取字符串的长度。在使用mb_strlen()函数前,首先要确保PHP配置文件中开启了“extension=php_mbstring.dll”扩展。

3、数学函数

为了方便开发人员处理程序中的数学运算,PHP内置了一系列的数学函数,用于获取最大值、最小值、生成随机数等常见的数学运算。

echo ceil(5.2);	// 输出结果:6
echo floor(7.8);	// 输出结果:7 
echo rand(1, 20);	// 随机输出1到20间的整数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值