以下三个片段有什么区别

班佳

我发现下面的片段非常令人困惑。Snippet 1 是直截了当的,每个人都知道它。其他两个片段有什么作用?它们的意义是什么,出于什么原因使用它们?

# Snippet 1
public function __construct (array $items) {
    $this->items = $items;
}

# Snippet 2
public function __construct (array $items) {
    $this->items = function () use ($items) {
        return $items;
    };
}

# Snippet 3
public function __construct (array $items) {
    $this->items = (function (...$items) {
        return $items;
    })(...$items);
}

第三个片段来自SOLIDay 2015 - Marco Pivetta - 非常防御性的 PHP #7

毛圈

片段 1 和 3 将为您提供类似的结果,除了$this->items第三个片段中数组不包含任何原始键。

Snippet 2 是更有趣的一个,因为它将包含一个匿名函数而不是一个值。如果你想推迟一些昂贵的输入操作,你可以使用它,而不是用于所有执行路径。您还可以保留每个调用的原始输入,如果您需要对输入执行各种转换,这将非常有用,但每个转换都需要访问“原始”输入。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

这三个任务继续之间有什么区别?

来自分类Dev

这三个FreeBSD版本之间有什么区别?(当前,发布和稳定)

来自分类Dev

Android - 这三个 xml 文件有什么区别?

来自分类Dev

在红宝石中定义两个点和三个点的范围时,有什么区别吗?

来自分类Dev

XOR交换算法和使用第三个变量的交换之间有什么区别吗?

来自分类Dev

这三个类似的Python类有什么区别?他们都做同样的事(?)

来自分类Dev

AzureFunction 应用程序中函数内部给出的黑白三个键有什么区别

来自分类Dev

以下两个语句有什么区别?

来自分类Dev

以下两个语句有什么区别

来自分类Dev

以下两个C代码有什么区别

来自分类Dev

以下两个声明之间有什么区别?

来自分类Dev

以下2个iptable规则有什么区别?

来自分类Dev

以下片段在功能/性能/效率方面有什么区别(如果有)?

来自分类Dev

代码片段有什么区别?

来自分类Dev

以下过程有什么区别?

来自分类Dev

以下代码有什么区别?

来自分类Dev

以下代码有什么区别

来自分类Dev

这两个C ++片段之间有什么区别?

来自分类Dev

这两个 jQuery 代码片段有什么区别?

来自分类Dev

这两个javascript代码片段有什么区别?

来自分类Dev

以下两个声明之间有什么区别以及何时应使用它们

来自分类Dev

使用以下两个命令安装docker有什么区别?

来自分类Dev

以下两个多线程Java代码之间有什么区别?

来自分类Dev

以下两个在pandas中的groupby()语句有什么区别?

来自分类Dev

以下两个代码段之间有什么区别?

来自分类Dev

以下两个多线程Java代码之间有什么区别?

来自分类Dev

以下两个while循环逻辑之间有什么区别。?

来自分类Dev

这两个计算三角数的程序有什么区别?

来自分类Dev

活动和片段之间有什么区别?

Related 相关文章

  1. 1

    这三个任务继续之间有什么区别?

  2. 2

    这三个FreeBSD版本之间有什么区别?(当前,发布和稳定)

  3. 3

    Android - 这三个 xml 文件有什么区别?

  4. 4

    在红宝石中定义两个点和三个点的范围时,有什么区别吗?

  5. 5

    XOR交换算法和使用第三个变量的交换之间有什么区别吗?

  6. 6

    这三个类似的Python类有什么区别?他们都做同样的事(?)

  7. 7

    AzureFunction 应用程序中函数内部给出的黑白三个键有什么区别

  8. 8

    以下两个语句有什么区别?

  9. 9

    以下两个语句有什么区别

  10. 10

    以下两个C代码有什么区别

  11. 11

    以下两个声明之间有什么区别?

  12. 12

    以下2个iptable规则有什么区别?

  13. 13

    以下片段在功能/性能/效率方面有什么区别(如果有)?

  14. 14

    代码片段有什么区别?

  15. 15

    以下过程有什么区别?

  16. 16

    以下代码有什么区别?

  17. 17

    以下代码有什么区别

  18. 18

    这两个C ++片段之间有什么区别?

  19. 19

    这两个 jQuery 代码片段有什么区别?

  20. 20

    这两个javascript代码片段有什么区别?

  21. 21

    以下两个声明之间有什么区别以及何时应使用它们

  22. 22

    使用以下两个命令安装docker有什么区别?

  23. 23

    以下两个多线程Java代码之间有什么区别?

  24. 24

    以下两个在pandas中的groupby()语句有什么区别?

  25. 25

    以下两个代码段之间有什么区别?

  26. 26

    以下两个多线程Java代码之间有什么区别?

  27. 27

    以下两个while循环逻辑之间有什么区别。?

  28. 28

    这两个计算三角数的程序有什么区别?

  29. 29

    活动和片段之间有什么区别?

热门标签

归档