Annotation of embedaddon/php/tests/lang/passByReference_007.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Pass function and method calls by reference and by value.
3: --FILE--
4: <?php
5: class C {
6: static function sreturnVal() {
7: global $a;
8: return $a;
9: }
10:
11: static function &sreturnReference() {
12: global $a;
13: return $a;
14: }
15:
16: function returnVal() {
17: global $a;
18: return $a;
19: }
20:
21: function &returnReference() {
22: global $a;
23: return $a;
24: }
25: }
26:
27: function returnVal() {
28: global $a;
29: return $a;
30: }
31:
32: function &returnReference() {
33: global $a;
34: return $a;
35: }
36:
37:
38:
39: function foo(&$ref) {
40: var_dump($ref);
41: $ref = "changed";
42: }
43:
44:
45: echo "Pass a function call that returns a value:\n";
46: $a = "original";
47: foo(returnVal());
48: var_dump($a);
49:
50: echo "Pass a function call that returns a reference:\n";
51: $a = "original";
52: foo(returnReference());
53: var_dump($a);
54:
55:
56: echo "\nPass a static method call that returns a value:\n";
57: $a = "original";
58: foo(C::sreturnVal());
59: var_dump($a);
60:
61: echo "Pass a static method call that returns a reference:\n";
62: $a = "original";
63: foo(C::sreturnReference());
64: var_dump($a);
65:
66:
67: $myC = new C;
68: echo "\nPass a method call that returns a value:\n";
69: $a = "original";
70: foo($myC->returnVal());
71: var_dump($a);
72:
73: echo "Pass a method call that returns a reference:\n";
74: $a = "original";
75: foo($myC->returnReference());
76: var_dump($a);
77:
78: ?>
79: --EXPECTF--
80: Pass a function call that returns a value:
81:
82: Strict Standards: Only variables should be passed by reference in %s on line 44
83: string(8) "original"
84: string(8) "original"
85: Pass a function call that returns a reference:
86: string(8) "original"
87: string(7) "changed"
88:
89: Pass a static method call that returns a value:
90:
91: Strict Standards: Only variables should be passed by reference in %s on line 55
92: string(8) "original"
93: string(8) "original"
94: Pass a static method call that returns a reference:
95: string(8) "original"
96: string(7) "changed"
97:
98: Pass a method call that returns a value:
99:
100: Strict Standards: Only variables should be passed by reference in %s on line 67
101: string(8) "original"
102: string(8) "original"
103: Pass a method call that returns a reference:
104: string(8) "original"
105: string(7) "changed"
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>