采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
如图,打印结果为 string(3) “app” string(3) “log" 入口文件中传参"app”,这里打印出"app" 然后退出,不明白为什么会打印“log” ’
有问题要先看官方文档,尽管调用了 exit(), Shutdown函数总是会被执行,在base.php执行的Error::register();方法内有这样一行代码 register_shutdown_function([__CLASS__, 'appShutdown']); 就是定义php终止执行是要调用appShutdown方法,在该方法内执行 Container::get('log')->save();
同学你好,base.php 调用Error::register方法,里面注册了当进程执行结束后调用appShutdown方法,方法最下面调用container::get('log')的。
同学你好,这个make方法是容器获取类的实例的方法,入口文件中Container::get('app')走到这里 相当于$abstract参数 等于 app; 通过下面的三木运算 $this->name中刚开始并没有这个app ,所有$abstract的值 就是app了。
这个我理解,但是我在后面使用exit退出了,它为什么还打印了"log"
额,你打印不是在退出前打印的嘛?
不是很明白你的意思,退出是指退出哪里?退出的时候会调用log吗
有明白人回答这个问题吗?
登录后可查看更多问答,登录/注册
一门课掌握主流Tp5+最新Tp6框架底层,拥抱新潮流
898 14
1.0k 8
1.3k 7
1.0k 7
1.1k 7