php的序列化和反序列化

 

 序列化__sleep的时候必要返回一个数组,一定返回对象的属性,否则报错,键值的key不重要,bbbbbbbbb根本不重要,主要是值是不是对象的属性的名字对上,也就是aa就不正确,a正确

 

这里可以看见如果sleep里面返回的有对应属性的名字a那么后续的操作也就是$de->a='123';,最后序列化的结果会被保存下来

如果没有对应属性的名字,比如这里b没有,那么后续的操作$de->a='123';执行的结果那不会保存下来,序列化的仍是默认的

//$de->b='123';

string(34) "O:4:"demo":1:{s:1:"a";s:4:"abcd";}" object(demo)#2 (2) { ["a"]=> string(4) "abcd" ["b"]=> string(5) "abscd" }

//$de->a='123';

string(33) "O:4:"demo":1:{s:1:"a";s:3:"123";}" object(demo)#2 (2) { ["a"]=> string(3) "123" ["b"]=> string(5) "abscd" }

posted @ 2019-07-04 20:47  morris_pass_A  阅读(198)  评论(0编辑  收藏  举报