summaryrefslogtreecommitdiff
path: root/Zend/tests/closure_004.phpt
blob: c3de1372e9728ac0b4dcfa217e4413018a7d2def (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
--TEST--
Closure 004: Lambda with lexical variables (scope lifetime)
--FILE--
<?php

function run () {
    $x = 4;

    $lambda1 = function () use ($x) {
        echo "$x\n";
    };

    $lambda2 = function () use (&$x) {
        echo "$x\n";
        $x++;
    };

    return array($lambda1, $lambda2);
}

list ($lambda1, $lambda2) = run();

$lambda1();
$lambda2();
$lambda1();
$lambda2();

echo "Done\n";
?>
--EXPECT--
4
4
4
5
Done