日期:2014-05-17  浏览次数:20471 次

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就可以了。希望能帮到你。
------解决方案--------------------
楼上说的很好!
------解决方案--------------------
这是回调函数吧