- Notifications
You must be signed in to change notification settings - Fork 117
Closed
Description
When I serialize object which extends some base class with private property after unserialize I have default value for this property and extra field (with the same name) in not base class.
Classes
class TestBase{private $name = 'default'; public function getName(){return $this->name} public function setName($name){$this->name = $name} } class Test extends TestBase{} Code
$test = new Test(); $test->setName('new-name'); var_dump($test, $test->getName()); $new_test = msgpack_unpack(msgpack_pack($test)); var_dump($new_test, $new_test->getName()); Output
object(Test)#579 (1){["name":"TestBase":private]=> string(8) "new-name" } string(8) "new-name" object(Test)#588 (2){["name":"TestBase":private]=> string(7) "default" ["name"]=> string(8) "new-name" } string(7) "default" As you see method getName() return incorrect value in new object.
Metadata
Metadata
Assignees
Labels
No labels