【问题标题】:Why does PHP need the use operator for closures? [closed]为什么 PHP 需要 use 运算符来进行闭包? [关闭]
【发布时间】:2015-11-09 17:26:00
【问题描述】:

我知道 什么 use 运算符在类似 function($x,$y) use ($z) { ...

我不明白的是为什么 PHP 使用这种结构而其他语言不使用?

【问题讨论】:

标签: php closures


【解决方案1】:

Javascript 的变量范围相当宽松(您不需要将变量声明为全局变量)。 PHP 有更严格的变量范围(如果一个变量没有在它使用的范围内定义,并且没有用global 引入,那么它就不存在)。

use 声明告诉 PHP 使这些变量在闭包中可用(并且可能还告诉垃圾收集器在闭包被清理之前不要清理它们)。

【讨论】:

    猜你喜欢
    • 2011-02-04
    • 2010-11-07
    • 2014-01-14
    • 1970-01-01
    • 1970-01-01
    • 2018-03-22
    • 2021-11-06
    • 2012-12-03
    • 1970-01-01
    相关资源
    最近更新 更多