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 >> /php-7.1.11/ext/json/tests/ |
files >> //php-7.1.11/ext/json/tests/bug61978.phpt |
--TEST-- Bug #61978 (Object recursion not detected for classes that implement JsonSerializable) --SKIPIF-- <?php if (!extension_loaded("json")) print "skip"; ?> --FILE-- <?php class JsonTest1 { public $test; public $me; public function __construct() { $this->test = '123'; $this->me = $this; } } class JsonTest2 implements JsonSerializable { public $test; public function __construct() { $this->test = '123'; } public function jsonSerialize() { return array( 'test' => $this->test, 'me' => $this ); } } $obj1 = new JsonTest1(); var_dump(json_encode($obj1, JSON_PARTIAL_OUTPUT_ON_ERROR)); echo "==\n"; $obj2 = new JsonTest2(); var_dump(json_encode($obj2, JSON_PARTIAL_OUTPUT_ON_ERROR)); ?> --EXPECTF-- string(44) "{"test":"123","me":{"test":"123","me":null}}" == string(44) "{"test":"123","me":{"test":"123","me":null}}"y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`