Annotation of embedaddon/php/ext/spl/tests/array_008.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: SPL: ArrayIterator and foreach reference
! 3: --INI--
! 4: allow_call_time_pass_reference=1
! 5: --FILE--
! 6: <?php
! 7:
! 8: echo "==Normal==\n";
! 9:
! 10: $arr = array(0=>0, 1=>1, 2=>2);
! 11: $obj = new ArrayObject($arr);
! 12:
! 13: foreach($obj as $ak=>&$av) {
! 14: foreach($obj as $bk=>&$bv) {
! 15: if ($ak==0 && $bk==0) {
! 16: $bv = "modify";
! 17: }
! 18: echo "$ak=>$av - $bk=>$bv\n";
! 19: }
! 20: }
! 21:
! 22: echo "==UseRef==\n";
! 23:
! 24: $arr = array(0=>0, 1=>1, 2=>2);
! 25: $obj = new ArrayObject(&$arr);
! 26:
! 27: foreach($obj as $ak=>&$av) {
! 28: foreach($obj as $bk=>&$bv) {
! 29: if ($ak==0 && $bk==0) {
! 30: $bv = "modify";
! 31: }
! 32: echo "$ak=>$av - $bk=>$bv\n";
! 33: }
! 34: }
! 35:
! 36: ?>
! 37: ===DONE===
! 38: <?php exit(0); ?>
! 39: --EXPECTF--
! 40: ==Normal==
! 41: 0=>modify - 0=>modify
! 42: 0=>modify - 1=>1
! 43: 0=>modify - 2=>2
! 44: 1=>1 - 0=>modify
! 45: 1=>1 - 1=>1
! 46: 1=>1 - 2=>2
! 47: 2=>2 - 0=>modify
! 48: 2=>2 - 1=>1
! 49: 2=>2 - 2=>2
! 50: ==UseRef==
! 51: 0=>modify - 0=>modify
! 52: 0=>modify - 1=>1
! 53: 0=>modify - 2=>2
! 54: 1=>1 - 0=>modify
! 55: 1=>1 - 1=>1
! 56: 1=>1 - 2=>2
! 57: 2=>2 - 0=>modify
! 58: 2=>2 - 1=>1
! 59: 2=>2 - 2=>2
! 60: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>