Yii2 Calc Validator
Math expression validator without using eval()
for Yii2., (*1)
Installation
The preferred way to install this extension is through composer., (*2)
Either run, (*3)
$ composer require zhuravljov/yii2-calc-validator
or add, (*4)
"zhuravljov/yii2-calc-validator": "*"
to the require
section of your composer.json
file., (*5)
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., (*6)
For example:, (*7)
-
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., (*8)
More details about calculation of expressions., (*9)