Annotation of embedaddon/php/tests/lang/static_variation_002.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Static variables in methods & nested functions & evals.
                      3: --FILE--
                      4: <?php
                      5: 
                      6: Class C {
                      7:        function f() {
                      8:                static $a = array(1,2,3);
                      9:                eval(' static $k = array(4,5,6); ');
                     10:                
                     11:                function cfg() {
                     12:                        static $a = array(7,8,9);
                     13:                        eval(' static $k = array(10,11,12); ');
                     14:                        var_dump($a, $k);
                     15:                }
                     16:                var_dump($a, $k);
                     17:        }
                     18: }
                     19: $c = new C;
                     20: $c->f();
                     21: cfg();
                     22: 
                     23: Class D {
                     24:        static function f() {
                     25:                eval('function dfg() { static $b = array(1,2,3); var_dump($b); } ');
                     26:        }
                     27: }
                     28: D::f();
                     29: dfg();
                     30: 
                     31: eval(' Class E { function f() { static $c = array(1,2,3); var_dump($c); } }');
                     32: $e = new E;
                     33: $e->f();
                     34: 
                     35: ?>
                     36: --EXPECTF--
                     37: array(3) {
                     38:   [0]=>
                     39:   int(1)
                     40:   [1]=>
                     41:   int(2)
                     42:   [2]=>
                     43:   int(3)
                     44: }
                     45: array(3) {
                     46:   [0]=>
                     47:   int(4)
                     48:   [1]=>
                     49:   int(5)
                     50:   [2]=>
                     51:   int(6)
                     52: }
                     53: array(3) {
                     54:   [0]=>
                     55:   int(7)
                     56:   [1]=>
                     57:   int(8)
                     58:   [2]=>
                     59:   int(9)
                     60: }
                     61: array(3) {
                     62:   [0]=>
                     63:   int(10)
                     64:   [1]=>
                     65:   int(11)
                     66:   [2]=>
                     67:   int(12)
                     68: }
                     69: array(3) {
                     70:   [0]=>
                     71:   int(1)
                     72:   [1]=>
                     73:   int(2)
                     74:   [2]=>
                     75:   int(3)
                     76: }
                     77: array(3) {
                     78:   [0]=>
                     79:   int(1)
                     80:   [1]=>
                     81:   int(2)
                     82:   [2]=>
                     83:   int(3)
                     84: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>