????JFIF??x?x????'
Server IP : 79.136.114.73 / Your IP : 3.135.209.242 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/ext/spl/tests/ |
Upload File : |
--TEST-- SPL: ArrayObject::__construct basic usage with ArrayObject::ARRAY_AS_PROPS. Currently fails on php.net due to bug 45622. --FILE-- <?php class C { public $prop = 'C::prop.orig'; } class MyArrayObject extends ArrayObject { public $prop = 'MyArrayObject::prop.orig'; } echo "\n--> Access prop on instance of ArrayObject with ArrayObject::ARRAY_AS_PROPS:\n"; $c = new C; $ao = new ArrayObject($c, ArrayObject::ARRAY_AS_PROPS); testAccess($c, $ao); echo "\n--> Access prop on instance of MyArrayObject with ArrayObject::ARRAY_AS_PROPS:\n"; $c = new C; $ao = new MyArrayObject($c, ArrayObject::ARRAY_AS_PROPS); testAccess($c, $ao); function testAccess($c, $ao) { echo " - Iteration:\n"; foreach ($ao as $key=>$value) { echo " $key=>$value\n"; } echo " - Read:\n"; @var_dump($ao->prop, $ao['prop']); echo " - Write:\n"; $ao->prop = 'changed1'; $ao['prop'] = 'changed2'; var_dump($ao->prop, $ao['prop']); echo " - Isset:\n"; var_dump(isset($ao->prop), isset($ao['prop'])); echo " - Unset:\n"; unset($ao->prop); unset($ao['prop']); var_dump($ao->prop, $ao['prop']); echo " - After:\n"; var_dump($ao, $c); } ?> --EXPECTF-- --> Access prop on instance of ArrayObject with ArrayObject::ARRAY_AS_PROPS: - Iteration: prop=>C::prop.orig - Read: string(12) "C::prop.orig" string(12) "C::prop.orig" - Write: string(8) "changed2" string(8) "changed2" - Isset: bool(true) bool(true) - Unset: Notice: Undefined index: prop in %s on line 39 Notice: Undefined index: prop in %s on line 40 Notice: Undefined index: prop in %s on line 40 NULL NULL - After: object(ArrayObject)#2 (1) { ["storage":"ArrayObject":private]=> object(C)#1 (0) { } } object(C)#1 (0) { } --> Access prop on instance of MyArrayObject with ArrayObject::ARRAY_AS_PROPS: - Iteration: prop=>C::prop.orig - Read: string(24) "MyArrayObject::prop.orig" string(12) "C::prop.orig" - Write: string(8) "changed1" string(8) "changed2" - Isset: bool(true) bool(true) - Unset: Notice: Undefined index: prop in %s on line 40 Notice: Undefined index: prop in %s on line 40 NULL NULL - After: object(MyArrayObject)#3 (1) { ["storage":"ArrayObject":private]=> object(C)#4 (0) { } } object(C)#4 (0) { }