summaryrefslogtreecommitdiff
path: root/ext/spl/tests/array_008.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/spl/tests/array_008.phpt')
-rw-r--r--ext/spl/tests/array_008.phpt31
1 files changed, 31 insertions, 0 deletions
diff --git a/ext/spl/tests/array_008.phpt b/ext/spl/tests/array_008.phpt
new file mode 100644
index 0000000..e7a618d
--- /dev/null
+++ b/ext/spl/tests/array_008.phpt
@@ -0,0 +1,31 @@
+--TEST--
+SPL: ArrayIterator and foreach reference
+--FILE--
+<?php
+
+$arr = array(0=>0, 1=>1, 2=>2);
+$obj = new ArrayObject($arr);
+
+foreach($obj as $ak=>&$av) {
+ foreach($obj as $bk=>&$bv) {
+ if ($ak==0 && $bk==0) {
+ $bv = "modify";
+ }
+ echo "$ak=>$av - $bk=>$bv\n";
+ }
+}
+
+?>
+===DONE===
+<?php exit(0); ?>
+--EXPECTF--
+0=>modify - 0=>modify
+0=>modify - 1=>1
+0=>modify - 2=>2
+1=>1 - 0=>modify
+1=>1 - 1=>1
+1=>1 - 2=>2
+2=>2 - 0=>modify
+2=>2 - 1=>1
+2=>2 - 2=>2
+===DONE===