~ubuntu-branches/ubuntu/quantal/php5/quantal

« back to all changes in this revision

Viewing changes to tests/lang/engine_assignExecutionOrder_006.phpt

  • Committer: Bazaar Package Importer
  • Author(s): Sean Finney
  • Date: 2009-07-01 09:12:10 UTC
  • mto: (0.9.1) (1.1.17 upstream)
  • mto: This revision was merged to the branch mainline in revision 58.
  • Revision ID: james.westby@ubuntu.com-20090701091210-go0h6506p62on17r
Tags: upstream-5.3.0
ImportĀ upstreamĀ versionĀ 5.3.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
--TEST--
 
2
Evaluation order during assignments.
 
3
--FILE--
 
4
<?php
 
5
 
 
6
function i1() {
 
7
        echo "i1\n";
 
8
        return 0;
 
9
}
 
10
 
 
11
function i2() {
 
12
        echo "i2\n";
 
13
        return 0;
 
14
}
 
15
 
 
16
function i3() {
 
17
        echo "i3\n";
 
18
        return 0;
 
19
}
 
20
 
 
21
function i4() {
 
22
        echo "i4\n";
 
23
        return 0;
 
24
}
 
25
 
 
26
function i5() {
 
27
        echo "i5\n";
 
28
        return 0;
 
29
}
 
30
 
 
31
function i6() {
 
32
        echo "i6\n";
 
33
        return 0;
 
34
}
 
35
 
 
36
$a = array(array(0));
 
37
$b = array(array(1));
 
38
$c = array(array(2));
 
39
 
 
40
$a[i1()][i2()] = ($b[i3()][i4()] = $c[i5()][i6()]);
 
41
var_dump($a);
 
42
var_dump($b);
 
43
var_dump($c);
 
44
 
 
45
$a[i1()][i2()] = $b[i3()][i4()] = -$c[i5()][i6()];
 
46
var_dump($a);
 
47
var_dump($b);
 
48
var_dump($c);
 
49
 
 
50
$a[i1()][i2()] = -($b[i3()][i4()] = +($c[i5()][i6()]));
 
51
var_dump($a);
 
52
var_dump($b);
 
53
var_dump($c);
 
54
 
 
55
 
 
56
?>
 
57
--EXPECT--
 
58
i1
 
59
i2
 
60
i3
 
61
i4
 
62
i5
 
63
i6
 
64
array(1) {
 
65
  [0]=>
 
66
  array(1) {
 
67
    [0]=>
 
68
    int(2)
 
69
  }
 
70
}
 
71
array(1) {
 
72
  [0]=>
 
73
  array(1) {
 
74
    [0]=>
 
75
    int(2)
 
76
  }
 
77
}
 
78
array(1) {
 
79
  [0]=>
 
80
  array(1) {
 
81
    [0]=>
 
82
    int(2)
 
83
  }
 
84
}
 
85
i1
 
86
i2
 
87
i3
 
88
i4
 
89
i5
 
90
i6
 
91
array(1) {
 
92
  [0]=>
 
93
  array(1) {
 
94
    [0]=>
 
95
    int(-2)
 
96
  }
 
97
}
 
98
array(1) {
 
99
  [0]=>
 
100
  array(1) {
 
101
    [0]=>
 
102
    int(-2)
 
103
  }
 
104
}
 
105
array(1) {
 
106
  [0]=>
 
107
  array(1) {
 
108
    [0]=>
 
109
    int(2)
 
110
  }
 
111
}
 
112
i1
 
113
i2
 
114
i3
 
115
i4
 
116
i5
 
117
i6
 
118
array(1) {
 
119
  [0]=>
 
120
  array(1) {
 
121
    [0]=>
 
122
    int(-2)
 
123
  }
 
124
}
 
125
array(1) {
 
126
  [0]=>
 
127
  array(1) {
 
128
    [0]=>
 
129
    int(2)
 
130
  }
 
131
}
 
132
array(1) {
 
133
  [0]=>
 
134
  array(1) {
 
135
    [0]=>
 
136
    int(2)
 
137
  }
 
138
}