解惑析构函数和register_shutdown_function

解惑析构函数和register_shutdown_function


这是2020小目标20篇技术Blog的第 5 篇
距离小目标还有 15 篇✍️
@LiKachung


本文可以结合 析构函数和register_shutdown_function执行先后问题
加深理解


通过生命周期 理解之前未理解透的问题
析构函数和register_shutdown_function执行先后问题



PHP生命周期

图片引用自 PHP7内核剖析
侵权请联系删除 谢谢

php_life.png

php_request_shutdown阶段

shutdown.png


此图可以清晰看出 从PHP运行过程来讲
首先会调用 register_shutdown_function 函数
其次再调用 析构函数

结论

为什么之前的 析构函数和register_shutdown_function执行先后问题
前两个例子是析构函数先执行 原因很简单
因为使用了unset函数 类被销毁了 因此调用了析构函数
但是PHP的生命周期还未结束 因此 register_shutdown_function 函数还未调用

# PHP

Comments

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×