当前位置:首页 > PHP

php 函数 实现

2026-01-29 15:38:55PHP

PHP 函数实现基础

PHP 函数通过 function 关键字定义,语法如下:

function functionName($param1, $param2 = "default") {
    // 函数体
    return $result;
}
  • 函数名不区分大小写(但调用时建议保持声明时的大小写)
  • 参数可设置默认值
  • 使用 return 返回值,未显式返回时默认返回 null

参数传递方式

值传递(默认)与引用传递:

function byValue($arg) {
    $arg += 1;
}

function byReference(&$arg) {
    $arg += 1;
}

$num = 5;
byValue($num);  // $num 仍为 5
byReference($num); // $num 变为 6

可变数量参数

三种处理可变参数的方法:

php 函数 实现

// 1. func_get_args() 获取所有参数
function sum() {
    $args = func_get_args();
    return array_sum($args);
}

// 2. ...$args (PHP 5.6+)
function sum(...$numbers) {
    return array_sum($numbers);
}

// 3. 类型提示 + 可变参数
function sumAll(int ...$numbers) {
    return array_sum($numbers);
}

返回值类型声明

PHP 7.0+ 支持返回值类型声明:

function add(float $a, float $b): float {
    return $a + $b;
}

// 严格模式需在文件开头声明
declare(strict_types=1);

匿名函数(闭包)

匿名函数实现方式:

php 函数 实现

$greet = function($name) {
    return "Hello $name";
};
echo $greet("World"); // 输出 "Hello World"

// 使用 use 继承外部变量
$prefix = "Mr";
$greet = function($name) use ($prefix) {
    return "Hello $prefix $name";
};

箭头函数(PHP 7.4+)

简化闭包写法:

$factor = 10;
$multiplier = fn($x) => $x * $factor;
echo $multiplier(5); // 输出 50

生成器函数

通过 yield 实现迭代器:

function xrange($start, $end, $step = 1) {
    for ($i = $start; $i <= $end; $i += $step) {
        yield $i;
    }
}

foreach (xrange(1, 10) as $num) {
    echo "$num ";
}

函数存在性检查

检查函数是否可调用:

if (function_exists('my_function')) {
    my_function();
}

// 方法调用检查
if (is_callable([$object, 'method'])) {
    $object->method();
}

标签: 函数php
分享给朋友:

相关文章

php实现栈

php实现栈

栈的基本概念 栈(Stack)是一种遵循后进先出(LIFO)原则的数据结构。核心操作包括: push:元素入栈。 pop:元素出栈(返回并移除栈顶元素)。 peek:查看栈顶元素(不移除…

php验证码实现

php验证码实现

验证码实现方法 在PHP中实现验证码功能通常涉及生成随机字符串或数字,将其转换为图像,并通过会话(Session)进行验证。以下是几种常见的实现方式: 使用GD库生成图像验证码 GD库是PHP内置的…

php 购物车实现

php 购物车实现

数据库设计 购物车功能通常需要设计数据库表存储商品和用户信息。常见的表包括products(商品表)、users(用户表)和cart(购物车表)。cart表通常包含字段:id(主键)、user_id(…

php实现上传图片

php实现上传图片

上传图片的基本流程 PHP 实现图片上传功能需要处理文件接收、验证、保存等步骤。以下是具体实现方法。 创建 HTML 表单 在 HTML 中创建一个表单,设置 enctype="multipart/…

php 实现单链表

php 实现单链表

单链表的基本概念 单链表是一种线性数据结构,由节点组成,每个节点包含数据域和指向下一个节点的指针域。链表的头节点是访问整个链表的入口。 单链表的节点类实现 在PHP中,可以通过类来定义链表节…

php变量的实现

php变量的实现

PHP变量的实现机制 PHP变量的实现基于Zend引擎的底层数据结构。核心结构体zval用于存储变量类型和值,其设计允许动态类型转换和高效内存管理。 zval结构体 PHP变量通过zval结构体实现…