函数是一段可重复使用的代码块,可以将一系列操作封装起来,使代码更加模块化、可维护和可重用,来大大节省我们的开发时间和代码量,提高编程效率。在PHP中你可以使用:
-
内置函数(如
strlen()
、array_merge()
) -
自定义函数(如
sayHello()
)
内置函数
PHP 拥有大量内置函数(Built-in Functions),这些函数为开发者提供了强大的功能,涵盖字符串处理、数组操作、数学运算、文件操作、会话管理、网络请求、正则表达式、时间日期等。
内置函数有很多,比如之前count() 就是一个内置函数,除此之外还有获取当前时间的 time()函数,date('Y-m-d H:i:s')函数等。后面有机会会写,这边就不一一列举了。我们这篇文章主要来说说自定义函数。
函数定义和调用
PHP 函数准则:
-
函数的名称应该提示出它的功能
-
函数名称以字母或下划线开头(不能以数字开头)
php
functionfunctionname(参数1, 参数2, ...) {
// 函数体:写你想要执行的代码
return返回值;
}
//调用
functionName();
示例:
php
<?php
functiontest(){
echo'我的名字是:Wolven' . "<br>";
}
test();
// 获取当前的时间
functionnowTime(){
echodate('Y-m-d H:i:s');
}
nowTime();
?>

添加参数
为了给函数添加更多的功能,我们可以添加参数,参数类似变量。
php
<?php
functionmyName($name){
echo"我的名字是:$name";
}
myName("wolven");
?>

示例
php
<?php
// 获取当前的时间
functionnowTime($type){
if($type=="time"){
echodate('Y-m-d H:i:s');
}
elseif($type=="day"){
echodate('Y-m-d');
}
}
nowTime("time");
?>

多个参数
php
<?php
functionplus($a,$b)
{
echo$a+$b;
}
plus(2,3);
?>

严格模式
我们将上述代码稍微做一点小改动:
php
<?php
functionplus($a,$b)
{
echo$a+$b;
}
plus('2','3');
?>
这边我们将传入参数修改为字符形式,但是这个时候我们在运行这个程序的时候就会发现:PHP直接成功地将两个字符识别为数字,并成功相加了。PHP 是一种 弱类型语言, 在 PHP 中,如果参与运算的值是字符串 但内容是数字(比如 '2'
),PHP 会自动将它们转换成数字再相加。

如果我们不想让PHP自动识别怎么办?这个时候就可以使用如下方法:
php
//严格模式
declare(strict_types=1);
functionplus(int $a,int $b)
{
echo$a+$b;
}
plus('2','3');
这段 PHP 代码使用了严格类型声明 declare(strict_types=1);
开启 严格类型检查模式 ,意味着函数参数必须是完全匹配 的类型,否则会抛出 TypeError 错误。此处plus
是一个接收两个整数参数的函数,输出它们的和,但是实际上传入的是两个字符串,所以这里会抛出一个错误:

返回值
return , 可有可无,但一般都有
php
functionplus($a,$b)
{
return$a+$b;
}
echoplus(2,3);

资源分享
夸克网盘「PHP项目实战教程」链接:https://pan.quark.cn/s/9c979e367c5f