php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /opt/php-7.0.1/ext/spl/tests/ |
files >> //opt/php-7.0.1/ext/spl/tests/arrayObject___construct_basic2.phpt |
--TEST-- SPL: ArrayObject::__construct basic usage. --FILE-- <?php class C { public $prop = 'C::prop.orig'; } class MyArrayObject extends ArrayObject { public $prop = 'MyArrayObject::prop.orig'; } echo "--> Access prop on instance of ArrayObject:\n"; $c = new C; $ao = new ArrayObject($c); testAccess($c, $ao); echo "\n--> Access prop on instance of MyArrayObject:\n"; $c = new C; $ao = new MyArrayObject($c); 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: - Iteration: prop=>C::prop.orig - Read: NULL string(12) "C::prop.orig" - Write: string(8) "changed1" string(8) "changed2" - Isset: bool(true) bool(true) - Unset: Notice: Undefined property: ArrayObject::$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: - 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 property: MyArrayObject::$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) { }y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`