1--TEST-- 2Bug #12 (msgpack_seriallize interfere with php serialize) 3--SKIPIF-- 4<?php 5if (!extension_loaded("msgpack")) { 6 echo "skip"; 7} 8if (version_compare(PHP_VERSION, '5.4.0') < 0) { 9 echo "skip tests before PHP 5.4"; 10} 11--FILE-- 12<?php 13 14class Demo extends ArrayObject { 15 16} 17 18$obj = new StdClass(); 19 20$demo = new Demo; 21 22$demo[] = $obj; 23$demo[] = $obj; 24 25$data = array( 26 $demo, 27 $obj, 28 $obj, 29); 30 31print_r(msgpack_unserialize(msgpack_serialize($data))); 32?> 33--EXPECTF-- 34Array 35( 36 [0] => Demo Object 37 ( 38 [storage:ArrayObject:private] => Array 39 ( 40 [0] => stdClass Object 41 ( 42 ) 43 44 [1] => stdClass Object 45 ( 46 ) 47 48 ) 49 50 ) 51 52 [1] => stdClass Object 53 ( 54 ) 55 56 [2] => stdClass Object 57 ( 58 ) 59 60) 61