返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP8的箭头函数-PHP8知识详解
  • 282
分享到

PHP8的箭头函数-PHP8知识详解

phpPHP开发PHP教程 2023-09-09 09:09:02 282人浏览 薄情痞子
摘要

php 7.4 引入了箭头函数(Arrow Functions),并在 PHP 8 中得到了进一步改进和扩展。 箭头函数是一种更简洁的匿名函数形式,它们提供了一种更便捷的方式来定义轻量级的、单行的回调函数。 箭头函数的语法如下: fn (参

php 7.4 引入了箭头函数(Arrow Functions),并在 PHP 8 中得到了进一步改进和扩展。

箭头函数是一种更简洁的匿名函数形式,它们提供了一种更便捷的方式来定义轻量级的、单行的回调函数

箭头函数的语法如下:

fn (参数列表) => 表达式

这里是一个示例:

 $a + $b;echo $addition(2, 3); ?>

上面的代码定义了一个箭头函数 $addition,它接受两个参数 $a 和 $b,并返回它们的和。通过调用 $addition(2, 3),我们可以得到结果 5。

注意,箭头函数没有自己的作用域,它们继承父作用域的变量。这意味着,在箭头函数内部访问外部变量时,它会查找最近的包含该箭头函数的作用域。

Image

下面再看一个使用箭头函数的示例:

php$numbers = [1, 2, 3, 4, 5];// 使用箭头函数计算每个数字的平方,并返回结果数组$squares = array_map(fn($num) => $num ** 2, $numbers);print_r($squares);?>

以上代码在PHP8中运行结果是:

Array ( [0] => 1 [1] => 4 [2] => 9 [3] => 16 [4] => 25 )

上述代码中,我们使用array_map()函数对数组中的每个元素进行平方操作,并通过箭头函数fn($num) => $num ** 2指定了这个转换过程。执行后,将打印出经过平方操作后的结果数组

箭头函数与传统的匿名函数之间的区别包括:

箭头函数没有显式的 use 声明,它们自动捕获所需的变量。

箭头函数不能包含多条语句或复杂的控制结构,只能包含单个表达式。

箭头函数隐式返回其表达式的值,无需使用 return 关键字

需要注意的是,箭头函数不会创建新的作用域,因此无法访问外部的变量或常量。如果需要在箭头函数中使用外部变量或常量,需要使用 use 关键字将其引入。

我们看看下面代码:

 echo $message . ', ' . $name;  $greet('John'); ?>

在PHP8中运行的结果为:

Parse error: syntax error, unexpected token "echo" in D:\phpenv\www\localhost\test.php on line 3

错误在于箭头函数无法访问外部变量 $message。

在 PHP 8 中,箭头函数的作用域是词法作用域。它们不能像匿名函数那样访问外部变量,而是只能访问自己内部的变量。

要修复这个问题,您可以将变量 $message 作为参数传递给箭头函数,或者使用闭包来实现:

 $message . ', ' . $name;};echo $greet('John')('Doe');?>

上面代码在PHP8中的运行结果为:

John, Doe

 

来源地址:https://blog.csdn.net/u010292470/article/details/132529448

--结束END--

本文标题: PHP8的箭头函数-PHP8知识详解

本文链接: https://lsjlt.com/news/401226.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • PHP8的箭头函数-PHP8知识详解
    php 7.4 引入了箭头函数(Arrow Functions),并在 PHP 8 中得到了进一步改进和扩展。 箭头函数是一种更简洁的匿名函数形式,它们提供了一种更便捷的方式来定义轻量级的、单行的回调函数。 箭头函数的语法如下: fn (参...
    99+
    2023-09-09
    php PHP开发 PHP教程
  • PHP8的匿名函数-PHP8知识详解
    php 8引入了匿名函数(Anonymous Functions),它是一种创建短生命周期的函数,不需要命名,并且可以在其作用域内直接使用。以下是在PHP 8中使用匿名函数的知识要点: 创建匿名函数,语法格式如下: $fn = func...
    99+
    2023-09-13
    php PHP开发 PHP教程
  • PHP8的数组-PHP8知识详解
    今天开始学习数组, 本文主要讲了三点:什么是数组、php8中数组的改进、数组函数。 一、什么是数组 在PHP8中,数组是非常重要的数据类型。相对于其他的数据类型,数组更像一种结构,而这种结构可以储存一系列数值。 数组中的数值被称为数组元素。...
    99+
    2023-09-24
    php PHP开发 PHP教程
  • PHP8函数包含文件-PHP8知识详解
    在php中,可以使用以下函数来包含其他文件:include()、include_once()、require()、require_once()。 include(): 包含并运行指定文件中的代码。如果文件不存在或包含过程中出现错误,将发...
    99+
    2023-09-10
    php PHP开发 PHP教程
  • PHP8内置函数中的变量函数-PHP8知识详解
    在php8中,与变量相关的内置函数比较多,本文说一些比较重要的、常见的内置函数。今日着重讲解了5个,分别是:检测变量是否为空的函数empty()、判断变量是否定义过的函数isset()、销毁指定的变量的函数unset()、获取变量的类型的函...
    99+
    2023-09-18
    php PHP开发 PHP教程
  • PHP8的多维数组-PHP8知识详解
    今天分享的是php8的数组中的多维数组,主要内容有:多维数组的概念、创建和输出二维数组、创建和输出三维数组。 多维数组的概念 多维数组是包含一个或多个数组的数组。在多维数组中,主数组中的每一个元素也可以是一个数组,子数组中的每一个元素也...
    99+
    2023-10-06
    php PHP开发 PHP教程
  • PHP8的运算符-PHP8知识详解
    运算符是可以通过给出的一或多个值(用编程行话来说,表达式)来产生另一个值(因而整个结构成为一个表达式)的东西。 PHP8的运算符有很多,按类型分有一元运算符、二元运算符、三元运算符。 一元运算符只对一个表达式执行操作,只能接受一个值,例如 ...
    99+
    2023-09-16
    PHP开发 php PHP教程 PHP8
  • 在PHP8中遍历数组-PHP8知识详解
    所谓遍历数组就是把数组中的变量值读取出来。遍历数组中的所有元素对程序员来说是经常使用的操作,通过遍历数组可以完成数组元素的查询工作。 这好比你去商场买东西一样,要买什么东西,就去该区域浏览一遍,以便找出适合自己的产品。 以下是遍历数组的两种...
    99+
    2023-09-27
    php PHP开发 PHP教程
  • 在PHP8中统计数组元素个数-PHP8知识详解
    在php8中,统计数组元素的个数,有下面几个函数:使用count()函数统计数组元素个数、使用sizeof()函数统计数组元素个数。还讲到了,使用array_count_values()函数来统计数组中每个元素出现的次数。 1、使用co...
    99+
    2023-09-18
    php PHP开发 PHP教程
  • PHP8的静态变量和方法-PHP8知识详解
    我们在上一课程讲到了public、private、protected这3个关键字,今天我们来讲解static关键字,明天再讲解final关键字。 如果不想通过创建对象来调用变量或方法,则可以将该变量或方法创建为静态变量或方法,也就是在变量或...
    99+
    2023-10-10
    php PHP开发 PHP教程
  • 函数的参数传递和返回值-PHP8知识详解
    本文学习的是《php8知识详解》中的《函数的参数传递和返回值》。主要包括:向函数传递参数值、向函数传递参数引用、函数的返回值。 向函数传递参数值 函数是一段封闭的程序,有时候,程序员需要向函数传递一些数据进行操作。可以接受传入参数的函数...
    99+
    2023-08-31
    php PHP开发 PHP教程
  • PHP8函数:get_debug_type()的用途详解
    PHP8是PHP语言的最新版本。这个版本新增了很多强大的功能和改进,在解释器性能、类型系统和错误处理方面有很多进展。其中一个非常实用的新功能是get_debug_type()函数。它可以方便地获取表达式的类型信息,这个函数的使用非常容易,让...
    99+
    2023-05-17
    函数 PHP get_debug_type()
  • JS 箭头函数的this指向详解
    箭头函数是ES6中的新增特性,他没有自己的this,其this指向从外层代码库继承。 使用箭头函数时要注意一下几点: 箭头函数不能用作构造函数,用的话会抛出一个错误 ...
    99+
    2024-04-02
  • PHP8函数:str_contains()的新用途
    PHP 8是一款功能更强大的编程语言,它引入了许多新的函数和特性,其中之一就是str_contains()函数。str_contains()函数主要用于检查字符串中是否包含指定的子字符串,它可以用于各种不同的应用程序中,例如搜索引擎、数据分...
    99+
    2023-05-16
    函数 PHP str_contains()
  • 详解JavaScript中的箭头函数的使用
    目录前言箭头函数语法无圆括号语法隐式返回注意隐式返回错误无法命名箭头函数如何处理this关键字匿名箭头函数不正常工作的情况箭头函数作为对象方法箭头函数与第三方库箭头函数没有argum...
    99+
    2022-11-13
    JavaScript箭头函数使用 JavaScript 箭头函数 JS 箭头函数
  • PHP8中的新函数str_starts_with():字符串开头判断方法
    随着PHP8的发布,我们迎来了一些新的函数和特性。其中一个非常有用的新函数是str_starts_with()。它用于判断一个字符串是否以另一个指定的字符串开头。在这篇文章中,我们将讨论这个新函数以及它在PHP中的使用方法。在过去,如果我们...
    99+
    2023-05-17
    PHP 字符串处理 str_starts_with()
  • JavaScript中箭头函数与普通函数的区别详解
    本文为大家讲解了JavaScript中箭头函数与普通函数的区别,供大家参考,具体内容如下 箭头函数: let fun = () => { console.log('...
    99+
    2024-04-02
  • PHP8中的数组函数:array_map()的详细应用技巧
    近年来,随着互联网行业的迅速发展,编程语言也在不断地更新换代。PHP作为一种较为流行的编程语言,也在这种趋势下不断发展。PHP8作为最新的版本,更新了其内置函数库,提供了更多实用的函数。本文将介绍PHP8中的数组函数array_map()的...
    99+
    2023-05-18
    PHP 数组函数 array_map()
  • PHP8中的函数:str_contains()的新特性
    随着互联网的快速发展,编程语言也在不断地更新和升级。作为一种常用的编程语言,PHP也经历了无数次的改进和提升。PHP8作为最新版本,不仅引入了全新的特性,还升级了很多功能。其中,函数str_contains()就是PHP8中一个非常有用的新...
    99+
    2023-05-16
    函数 PHP str_contains()
  • PHP8中的函数:array_is_list()的新玩法
    PHP8是最新的PHP版本,打破了创新的记录。PHP8新增加了很多新特性和函数,其中之一就是函数array_is_list()的新玩法。在这篇文章中,我将讨论这个函数的新使用方法,解释它能为开发人员带来的好处。 首先,让我们来看一下arra...
    99+
    2023-05-17
    函数 PHP array_is_list()
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作