PHP5.4闭包

PHP5.4闭包,php,Php,可在以下网址找到: 有人能解释一下它的作用吗?最好举个例子。闭包是一个匿名函数,通常与回调一起使用。例如: $that = $this; $closure = function (...) use ($that) { ... }; 重新绑定意味着您可以在anomymous函数中使用$this,而不必使用:“use($var)”,因此当您在类中时: my_function_with_callback('some-parameter', function() { //Do stuff he

可在以下网址找到:


有人能解释一下它的作用吗?最好举个例子。

闭包是一个匿名函数,通常与回调一起使用。例如:

$that = $this;
$closure = function (...) use ($that) { ... };
重新绑定意味着您可以在anomymous函数中使用$this,而不必使用:“use($var)”,因此当您在类中时:

my_function_with_callback('some-parameter', function() {
    //Do stuff here
});

希望这能回答您的问题,这是一种从类中定义的匿名函数访问类方法的方法。但是由于标题是“PHP5.4闭包”,您不需要再这样做了,这是5.4中的一个更新,您可以使用$this(而不用将它传递给另一个类似$this的变量)。您可以在这里看到其中一个更改是“Added closure$this support back”

猜测一下,它允许函数像object$this的方法一样运行(即访问其方法和属性)-php.net文档怎么说?我相信这是针对匿名函数的:您是专门询问
$this
/
$this
还是匿名函数?
class MyClass {
    public function myMethod() {
        $anon = function() {
            //$this still refers to MyClass here
        };
    }
}