YII2 自定义控制器验证 behaviors()

本文介绍了在YII2框架中如何自定义控制器验证规则,以避免使用复杂的RABC权限验证插件。作者创建了一个简单的验证类,并在`behaviors()`方法中应用,实现了当用户未填写手机号时跳转到相应页面完成资料完善。文章提醒注意验证失败后不能直接return跳转,必须返回false,否则可能出现错误。这是一个适用于权限需求较单一场景的用户验证方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

YII2 自带验证函数,在每个控制器的behaviors()方法中。可是实现自由验证和跳转。(默认的一些验证,跳转很麻烦,暂时没有找到跳转到自定义路径的方法。就是验证失败后跳转路径。如果有知道的朋友,可以留意告诉我下,先谢谢啦!)

使用背景:

        YII2自带有RABC权限验证插件的,百度一下,使用教程很多。但是感觉太麻烦了,本人项目不需要那么复杂的,主要是还有建表,写的代码太多了,比较懒(这个是主要原因)。

         于是自己下一个简单的用户权限验证方法,正对权限比较单一的。如果太复杂的权限建议还是去看看RABC验证吧。


废话不多说,直接上代码:

        首先创建一个自定义的验证类


<?php

namespace frontend\filter;
use Yii;
use yii\base\ActionFilter;
use yii\web\Controller as ctrl;


class UserFilter extends ActionFilter
{
    public function beforeAction($action)
    {
        if(parent::beforeAction($action)) // TODO: Change the autogenerated stub 写死了,返回true
        {
            $user = Yii::$app->user->identity;
            if($user->state == 0){
                //return ctrl::redirect(['site/msg','msg' => '账户异常,请联系我们。']);
                ctrl::redi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值