博客列表 >php学习:第14章 对象序列化与实战案例

php学习:第14章 对象序列化与实战案例

王小飞
王小飞原创
2020年05月05日 18:04:17616浏览

对象序列化与sleep(), wackup()

  1. class lei
  2. {
  3. protected $name = '王小飞';
  4. public $sex = '男';
  5. protected $age = 20;
  6. private $isMarried = false;
  7. //__sleep()返回自定义的属性
  8. public function __sleep(): array
  9. {
  10. return ['age', 'sex'];
  11. }
  12. //__wakeup()更新属性值
  13. public function __wakeup()
  14. {
  15. $this->age = 26;
  16. $this->sex = '不告诉你';
  17. }
  18. }
  19. $lei = new lei();
  20. //打印自定义属性
  21. echo serialize($lei);
  22. //把序列化内容保存变量里面
  23. $xulie = serialize($lei);
  24. //字符串打印反序列化 更新属性
  25. var_dump(unserialize($xulie));

匿名类案例

  1. function ff(object $user, string $name)
  2. {
  3. return $user->write($name);
  4. }
  5. //new一个匿名类
  6. echo ff(new class (){
  7. public function write($name)
  8. {
  9. return '你好' . $name;
  10. }
  11. }, '王小飞');

总结:感觉越来越难了,继续加油!

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议