Z
ZHANK
编程在线教程PHP 教程函数定义与参数
函数

函数定义与参数

函数声明、参数/返回值类型声明(PHP7+)、默认参数、可变参数

函数定义与参数

PHP 函数从 7.0 开始支持类型声明,8.0 更进一步——命名参数、联合类型、mixed 类型。

学完本章你将: 掌握函数声明、类型声明、默认参数、可变参数。


基本函数

php
<?php
// 声明
function greet(string $name, string $prefix = "你好"): string {
    return "$prefix$name!";
}

echo greet("小明");                // 你好,小明!
echo greet("小红", "早上好");       // 早上好,小红!

// PHP 8.0 命名参数——跳过中间的默认参数
echo greet(prefix: "晚上好", name: "小刚");

类型声明

php
<?php
// 参数类型(PHP 7+)
function add(int $a, int $b): int {
    return $a + $b;
}

// 联合类型(PHP 8+)
function format(int|string $value): string {
    return (string)$value;
}

// mixed 类型(PHP 8+)—— 任意类型
function debug(mixed $value): void {
    var_dump($value);
}

// 可为 null(PHP 7.1+)
function find(?int $id): ?string {
    if ($id === null) return null;
    return "found";
}

可变参数

php
<?php
// ... 展开运算符
function sum(int ...$nums): int {
    return array_sum($nums);
}

echo sum(1, 2, 3, 4, 5);  // 15

// 数组展开到参数
$args = [1, 2, 3];
echo sum(...$args);        // 6