php 函数实现
PHP 函数实现基础
PHP 函数的定义使用 function 关键字,后跟函数名和参数列表。函数名不区分大小写,但建议保持一致。
function functionName($param1, $param2 = 'default') {
// 函数体
return $result;
}
函数参数与返回值
PHP 支持默认参数值,可选参数需放在必选参数之后。返回值通过 return 语句返回,未显式返回时函数返回 null。
function greet($name, $greeting = 'Hello') {
return "$greeting, $name!";
}
echo greet('World'); // 输出: Hello, World!
可变参数函数
使用 ... 运算符实现可变参数,参数会被打包为数组。
function sum(...$numbers) {
return array_sum($numbers);
}
echo sum(1, 2, 3); // 输出: 6
匿名函数与闭包
匿名函数(闭包)可以作为变量赋值或传递。使用 use 关键字继承外部变量。
$greet = function($name) {
return "Hello, $name!";
};
echo $greet('PHP'); // 输出: Hello, PHP!
类型声明与严格模式
PHP 7+ 支持参数和返回值的类型声明。启用严格模式需在文件开头添加 declare(strict_types=1);。
declare(strict_types=1);
function add(int $a, int $b): int {
return $a + $b;
}
echo add(1, 2); // 输出: 3
递归函数示例
递归函数需注意终止条件,避免无限递归。
function factorial($n) {
if ($n <= 1) return 1;
return $n * factorial($n - 1);
}
echo factorial(5); // 输出: 120
函数动态调用
通过字符串变量动态调用函数,使用 call_user_func() 或变量函数语法。
function sayHi() { echo "Hi!"; }
$func = 'sayHi';
$func(); // 输出: Hi!
内置函数的使用
PHP 提供大量内置函数,如字符串处理、数组操作等。调用时需注意参数顺序和返回值类型。
$str = 'php is fun';
echo strtoupper($str); // 输出: PHP IS FUN
注意事项
- 避免函数名与内置函数冲突。
- 函数作用域内无法直接访问全局变量,需使用
global关键字或$GLOBALS数组。 - 函数内部可定义静态变量,保持值的持久性。







