Annotation of embedaddon/php/tests/lang/static_basic_001.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Static keyword - basic tests
3: --FILE--
4: <?php
5:
6: echo "\nSame variable used as static and non static.\n";
7: function staticNonStatic() {
8: echo "---------\n";
9: $a=0;
10: echo "$a\n";
11: static $a=10;
12: echo "$a\n";
13: $a++;
14: }
15: staticNonStatic();
16: staticNonStatic();
17: staticNonStatic();
18:
19: echo "\nLots of initialisations in the same statement.\n";
20: function manyInits() {
21: static $counter=0;
22: echo "------------- Call $counter --------------\n";
23: static $a, $b=10, $c=20, $d, $e=30;
24: echo "Unitialised : $a\n";
25: echo "Initialised to 10: $b\n";
26: echo "Initialised to 20: $c\n";
27: echo "Unitialised : $d\n";
28: echo "Initialised to 30: $e\n";
29: $a++;
30: $b++;
31: $c++;
32: $d++;
33: $e++;
34: $counter++;
35: }
36: manyInits();
37: manyInits();
38: manyInits();
39:
40: echo "\nUsing static keyword at global scope\n";
41: for ($i=0; $i<3; $i++) {
42: static $s, $k=10;
43: echo "$s $k\n";
44: $s++;
45: $k++;
46: }
47: ?>
48: --EXPECT--
49:
50: Same variable used as static and non static.
51: ---------
52: 0
53: 10
54: ---------
55: 0
56: 11
57: ---------
58: 0
59: 12
60:
61: Lots of initialisations in the same statement.
62: ------------- Call 0 --------------
63: Unitialised :
64: Initialised to 10: 10
65: Initialised to 20: 20
66: Unitialised :
67: Initialised to 30: 30
68: ------------- Call 1 --------------
69: Unitialised : 1
70: Initialised to 10: 11
71: Initialised to 20: 21
72: Unitialised : 1
73: Initialised to 30: 31
74: ------------- Call 2 --------------
75: Unitialised : 2
76: Initialised to 10: 12
77: Initialised to 20: 22
78: Unitialised : 2
79: Initialised to 30: 32
80:
81: Using static keyword at global scope
82: 10
83: 1 11
84: 2 12
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>