zhuravljov/yii2-calc-validator

Math expression validator for Yii2

1.0 2015-04-18 17:34 UTC

This package is auto-updated.

Last update: 2020-07-18 16:30:47 UTC


README

Math expression validator without using eval() for Yii2.

Installation

The preferred way to install this extension is through composer.

Either run

$ composer require zhuravljov/yii2-calc-validator

or add

"zhuravljov/yii2-calc-validator": "*"

to the require section of your composer.json file.

Usage

public function rules()
{
    return [
        // ...
        
        // Rule for checking an expression
        ['amount1', 'zhuravljov\yii\validators\CalcValidator'],

        // Rule for checking an expressions with saving result of calculation
        ['amount2', 'zhuravljov\yii\validators\CalcValidator', 'resultAttribute' => 'amount2'],
        
        // ...
    ];
}

After adding this validator, expressions can be used in forms.

For example:

  • 12.80 + 3.50 * 2 - valid expression. Result: 19.8.
  • (2 + 2) * 2 - valid expression. Result: 8.
  • (2 + 2 - invalid expression.

This validator checks an expression and saves a result. And it can be used for currency fields or any numeric fields.

More details about calculation of expressions.