PHP函数

在PHP中,函数是代码块,他可以执行特定任务并返回结果。函数一般会包含:函数名、参数以及返回值等。

自定义函数

内置函数只能满足某些特定的场景,大部分时候我们会根据功能区自定义函数。

#示例

php 复制代码
<?php
    function sum($a, $b) {
        return $a + $b;
    }
    echo sum(1, 3);

执行结果

php 复制代码
4

函数名是sum,它有两个参数以及一个返回值。

可变函数

在PHP中,可变函数是值通过变量的值来动态调用函数。如果变量后面带有括号,则会去查找是否有跟变量值相同的函数名,如果有则会调用该函数。

#示例

php 复制代码
<?php
    function sum($a, $b) {
        return $a + $b;
    }

    function test($c) {
        return $c(2, 3);
    }
    echo test('sum');

执行结果

php 复制代码
5

内置函数

PHP内置了大量的函数供开发者使用,极大的方便了业务逻辑的处理。有些函数是可以直接使用的,有些则需要编译特定的PHP扩展模块才能使用。下面介绍几个内置函数。

#示例(sort() 对数组升序排序)

php 复制代码
<?php
   $a = [3, 5, 1, 4, 2];
   sort($a);
   var_dump($a);

执行结果

php 复制代码
array(5) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  [3]=>
  int(4)
  [4]=>
  int(5)
}

#示例(array_shift()--删除数组中的第一个元素)

php 复制代码
<?php
   $a = [3, 5, 1, 4, 2];
   array_shift($a);
   var_dump($a);

执行结果

php 复制代码
array(4) {
  [0]=>
  int(5)
  [1]=>
  int(1)
  [2]=>
  int(4)
  [3]=>
  int(2)
}

匿名函数

匿名函数也叫闭包函数,允许创建一个没有指定名称的函数,最经常用作回调函数。

#示例

php 复制代码
<?php
    //定义
   $a = function () {
     echo "这里是匿名函数" . PHP_EOL;
   };
   $a();

   //往匿名函数传值
    $name = "test";
    $b = function () use ($name) {
        echo $name;
    };
    $b();

执行结果

php 复制代码
这里是匿名函数
test

匿名函数中使用外部的变量,需要使用use结构去传参。

箭头函数

箭头函数是PHP7.4的新语法,是一种更简洁的匿名函数写法。

#示例--基本用法

php 复制代码
<?php
   $b = 5;
   $sum = fn($a) => $a + $b;
   var_dump($sum(1));

其实就相当于

php 复制代码
<?php
    $sum = function ($a) use ($b) {
     return $a + $b;
   };

执行结果

php 复制代码
int(6)

完结

如果你在阅读这篇文章时有所收获,请不要忘记点赞评论加关注,你的支持是我创作的最大动力。当然,如果你在文中发现了疏漏之处,或是有着其他的见解,欢迎私信与我交流。

我是老卢,一个热爱分享、不断探索的知识旅者。

相关推荐
ALex_zry8 分钟前
内核开发者的视角:C与Rust在系统编程中的哲学与实践
c语言·开发语言·rust
u***45168 分钟前
Windows安装Rust环境(详细教程)
开发语言·windows·rust
友友马9 分钟前
『QT』窗口 (二) - 深入剖析 QDialog 对话框机制与内存管理
开发语言·qt
TracyCoder12310 分钟前
Java后端Redis客户端选型指南
java·开发语言·redis
筱砚.13 分钟前
【C++——文件操作案例】
开发语言·c++
Zfox_19 分钟前
【Go】 协程和 channel
开发语言·后端·golang
向上_5035829133 分钟前
Android之kotlin学习
开发语言·学习·kotlin
木易 士心35 分钟前
Kotlin vs Swift:现代移动开发的“双子星”全面对比
开发语言·kotlin·swift
I_ltt_Itw,37 分钟前
Python协程学习笔记
开发语言·网络·python
大雨淅淅38 分钟前
【编程语言】Kotlin:从新手到大神的进阶之路
android·开发语言·kotlin