为了账号安全,请及时绑定邮箱和手机立即绑定

_initializa()方法是可以在所有action执行前去执行,但是该方法执行完毕后该怎么跳出?

_initializa()方法是可以在所有action执行前去执行,但是该方法执行完毕后该怎么跳出?

江户川乱折腾 2023-04-26 14:10:39
本人刚接触thinkphp不久,其实想做的事情很简单,就是一个基于session的用户登录验证,这个验证不想写在每一个action里面,希望能在所有action执行前去做这个验证,然后跳转到登录页。我自己网上也查了一些资料,看到有_before_这个用法,但是针对某一个action的,并非全局的。还看到了_initializa()方法,这个方法是可以在所有action执行前去执行,但是该方法执行完毕后该怎么跳出?让后面的action不执行。
查看完整描述

1 回答

?
慕丝7291255

TA贡献1859条经验 获得超6个赞

既然知道了_initializa()方法是在class里面第一个被执行的,就在这里判断用户session即可,未登录则$this->redirect('/member/login');
注意$this->redirect()和redirect()是不一样的,前者是直接跳到某控制器的某方法,后者是跳转至某个完整的网址.

查看完整回答
反对 回复 2023-04-28
  • 1 回答
  • 0 关注
  • 193 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信