yii2-switchcasevalidator Validator that will run on switch-case-like conditional

  1. Requirements
  2. Usage

Validator that will run on switch-case-like conditional

Requirements

  • Latest Yii2
  • PHP 5.4 or later

Usage

Add something like this in the model rules().


    //Assuming the model has attribute case, field1, and field2.
    //Each rule group will be validated when the case attribute match the cases.
    public function rules() {
        ['case', PetraBarus\Yii2\SwitchCaseValidator\Validator::class,
            //For PHP 5.4, you can use PetraBarus\Yii2\SwitchCaseValidator\Validator::className() or
            // string 'PetraBarus\Yii2\SwitchCaseValidator\Validator'
            'cases' => [
                1 => [
                    ['field1', 'required'],
                ],
                2 => [
                    ['field1', 'compare', 'compareValue' => 'Test']
                ],
                3 => [
                    ['field1', 'compare', 'compareValue' => 'Value 1'],
                    ['field2', 'email']
                ]
            ],
            //This will be executed if no cases matches.
            'default' => [
                ['field1', 'compare', 'compareValue' => 'Value 2'],
                ['field1', 'compare', 'compareValue' => 'Value 4'],
            ]
        ]
    }

0 1
2 followers
0 downloads
Yii Version: 2.0
License: MIT
Category: Validation
Developed by: petra
Created on: Sep 30, 2015
Last updated: 8 years ago

Related Extensions