Download the PHP package naotake51/evaluation without Composer
On this page you can find all versions of the php package naotake51/evaluation. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Please rate this library. Is it a good library?
Informations about the package evaluation
Overview
naotake51/evaluation is a Composer package for creating a simple expression evaluation module. It allows you to register your own functions to evaluate expressions (strings).
Using
Literal
| type | example |
|---|---|
| int | 123 |
| float | 0.5 .5 |
| boolean | True true TRUE False false FALSE |
| string | "aaa" 'aaa' 'aa\'aa\\aa' |
| array | [1, 2, [3, 4]] |
| object | {'a': 1, 'b': {'c': 2}} |
Operators and precedence
| Operator | example |
|---|---|
| ! | !true |
| * / % | 5 * 2 |
| + - | 5 + 2 |
| == != === !== | 1 === 1 |
| && | true && false |
| || | true || false |
Magic function
| identifier | description |
|---|---|
| __add | Override the binary operator '+'. |
| __sub | Override the binary operator '-'. |
| __mul | Override the binary operator '*'. |
| __div | Override the binary operator '/'. |
| __mod | Override the binary operator '%'. |
| __or | Override the binary operator '||'. |
| __and | Override the binary operator '&&'. |
| __equal | Override the binary operator '=='. |
| __not_equal | Override the binary operator '!='. |
| __equal_strict | Override the binary operator '==='. |
| __not_equal_strict | Override the binary operator '!=='. |
| __not | Override the unary operator '!'. |
Parameter check
By passing an array, you can define the type of the argument. It is also possible to express OR by separating with '|'.
| definition | description |
|---|---|
| numeric | Check with 'is_numeric'. |
| integer | Check with 'is_integer'. |
| float | Check with 'is_float'. |
| string | Check with 'is_string'. |
| bool | Check with 'is_bool'. |
| array | Check with 'is_array'. |
| object | Check with 'is_object'. |
| null | Check with 'is_null'. |
| mixed | All types are allowed. |
Overload
Multiple patterns can be overloaded by registering them.
Run-time error
| class | description |
|---|---|
| Errors\EvaluationError | Base class for errors that occur during evaluation. |
| Errors\SyntaxError | syntactic error. |
| Errors\UndefineFunctionError | Calling an undefined function. |
| Errors\ArgumentError | Error in parameter check. |
All versions of evaluation with dependencies
PHP Build Version
Package Version
Requires
php Version
^7.4 || ^8.0
The package naotake51/evaluation contains the following files
Loading the files please wait ...