Heim  >  Artikel  >  Backend-Entwicklung  >  zend framework 框架上,没有和init()对应的,在事物结束后执行XXXXX这样的办法

zend framework 框架上,没有和init()对应的,在事物结束后执行XXXXX这样的办法

WBOY
WBOYOriginal
2016-06-13 13:13:31812Durchsuche

zend framework 框架下,没有和init()对应的,在事物结束后执行XXXXX这样的办法?
PHP菜鸟,描述可能不准确

每个controller里边有个init(),写的东西可以让每个action都先执行它的

那有没有对应的,让每个action执行完都会去调的方法?

再高一点,就是整个程序的每个action执行完都会去调的?


php的register_shutdown_function可以回调,但是我想知道 zend有没有封装好上边说的这种机制?

如果有,是像register_shutdown_function一样脚本执行完才去执行的么?还是其他?

请不吝赐教....

------解决方案--------------------
貌似,没有,自己写个方法调用
------解决方案--------------------
"再高一点,就是整个程序的每个action执行完都会去调的?"

什么时候? action执行完一般是render对应的view, 然后输出
你是要在render view前还是之后? 输出前后?
如果action redirect到其它action了呢? 

------解决方案--------------------
有的,preDispatch和postDispatch就是控制器里每个Action都会先执行和后执行,如果你想每个控制器运行前都运行某些代码,也很简单,你只需个人写一个继承了Zend_controller_Action的类,如AaController,然后在该类里写上你的需求代码,再将要运行你的需求代码的类去继承AaController就可以了。希望能帮到你。
------解决方案--------------------
楼上说的很好!
------解决方案--------------------
这是回调函数吧

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn