redirect 必须放到所有视图输出之前,也就是 load->view 之前。 回复 11# Hex
redirect 我是放在所有输出的前面调用的,因为我是在判断权限不符时直接跳转到登录页,只有权限通过了,才有可能处理后继界面。(结果一样)
另外一个有点相关的问题:有时需要显示一个提示的视图然后就直接退出了,此时用了load来装载视图,接着用die退出,但它却完全没有输出了。估计是CI的对视图的管理机制是先缓存,然后控制器结束了它才一块输出(我没细看CI底层代码)。不知道想即时输出一个视图然后立刻退出应该用哪个CI函数。当时试过CI中一个刷新缓存的函数,没一点效果。 回复 12# killbug
CI 视图使用了 output buffer,关于 buffer 你可以看看 PHP 手册,或者 google 一下。
这个就造成了所有视图一起输出的结果。貌似不能改变这种机制,除非你自己修改 CI 源码。 首先衷心谢谢HEX的热心回答!
好象我提问的所有那些问题,暂时还没有其他高手支招,好象人气还不够。
我的问题仍在郁闷中... 回复 14# killbug
我建议你使用调试工具跟踪一下,设置断点,肯定是能得到满意结果的。 回复 15# Hex
PHP的调试工具还没接触过,平常都是直接用输出结果来调试程序的。 问题解决了,是漏了引用辅助模块 url 。
不过有一点想不明白,为什么打开了PHP的显示出错信息的开关,为什么调用 redirect 不存在时,CI也不报错?
再次感谢HEX的热情帮助! 回复 17# killbug
CI 很多地方使用了 @,所以不报错。
页:
1
[2]