summaryrefslogtreecommitdiff
path: root/tests/lang/returnByReference.002.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lang/returnByReference.002.phpt')
-rw-r--r--tests/lang/returnByReference.002.phpt29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/lang/returnByReference.002.phpt b/tests/lang/returnByReference.002.phpt
new file mode 100644
index 0000000..3494eb5
--- /dev/null
+++ b/tests/lang/returnByReference.002.phpt
@@ -0,0 +1,29 @@
+--TEST--
+Returning a reference from a function.
+--FILE--
+<?php
+function &returnRef() {
+ global $a;
+ return $a;
+}
+
+function returnVal() {
+ global $a;
+ return $a;
+}
+
+$a = "original";
+$b =& returnVal();
+$b = "changed";
+var_dump($a); //expecting warning + "original"
+
+$a = "original";
+$b =& returnRef();
+$b = "changed";
+var_dump($a); //expecting "changed"
+?>
+--EXPECTF--
+
+Strict Standards: Only variables should be assigned by reference in %s on line 13
+string(8) "original"
+string(7) "changed"