????JFIF??x?x????'
Server IP : 79.136.114.73 / Your IP : 216.73.216.126 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/self/root/home/b8009/php-5.6.22/tests/lang/ |
Upload File : |
--TEST-- Foreach loop tests - substituting the entire iterated entity during the loop. --FILE-- <?php class C { public $a = "Original a"; public $b = "Original b"; public $c = "Original c"; public $d = "Original d"; public $e = "Original e"; } echo "\nSubstituting the iterated object for a different object.\n"; $obj = new C; $obj2 = new stdclass; $obj2->a = "new a"; $obj2->b = "new b"; $obj2->c = "new c"; $obj2->d = "new d"; $obj2->e = "new e"; $obj2->f = "new f"; $ref = &$obj; $count=0; foreach ($obj as $v) { var_dump($v); if ($v==$obj->b) { $ref=$obj2; } if (++$count>10) { echo "Loop detected.\n"; break; } } var_dump($obj); echo "\nSubstituting the iterated object for an array.\n"; $obj = new C; $a = array(1,2,3,4,5,6,7,8); $ref = &$obj; $count=0; foreach ($obj as $v) { var_dump($v); if ($v==="Original b") { $ref=$a; } if (++$count>10) { echo "Loop detected.\n"; break; } } var_dump($obj); echo "\nSubstituting the iterated array for an object.\n"; $a = array(1,2,3,4,5,6,7,8); $obj = new C; $ref = &$a; $count=0; foreach ($a as $v) { var_dump($v); if ($v===2) { $ref=$obj; } if (++$count>10) { echo "Loop detected.\n"; break; } } var_dump($obj); ?> --EXPECTF-- Substituting the iterated object for a different object. string(10) "Original a" string(10) "Original b" string(5) "new a" string(5) "new b" string(5) "new c" string(5) "new d" string(5) "new e" string(5) "new f" object(stdClass)#%d (6) { ["a"]=> string(5) "new a" ["b"]=> string(5) "new b" ["c"]=> string(5) "new c" ["d"]=> string(5) "new d" ["e"]=> string(5) "new e" ["f"]=> string(5) "new f" } Substituting the iterated object for an array. string(10) "Original a" string(10) "Original b" int(1) int(2) int(3) int(4) int(5) int(6) int(7) int(8) array(8) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) [4]=> int(5) [5]=> int(6) [6]=> int(7) [7]=> int(8) } Substituting the iterated array for an object. int(1) int(2) string(10) "Original a" string(10) "Original b" string(10) "Original c" string(10) "Original d" string(10) "Original e" object(C)#%d (5) { ["a"]=> string(10) "Original a" ["b"]=> string(10) "Original b" ["c"]=> string(10) "Original c" ["d"]=> string(10) "Original d" ["e"]=> string(10) "Original e" }