Download the PHP package avadim/ace-calculator without Composer
On this page you can find all versions of the php package avadim/ace-calculator. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download avadim/ace-calculator
More information about avadim/ace-calculator
Files in avadim/ace-calculator
Package ace-calculator
Short Description Flexible universal calculator with custom operators, functions and variables
License MIT
Homepage https://github.com/aVadim483/ace-calculator
Informations about the package ace-calculator
AceCalculator - flexible universal calculator in PHP
You can calculate classical mathematical expressions with variables, or you can specify your own calculation rules, operators or custom functions
Forked from NeonXP/MathExecutor (https://github.com/NeonXP/MathExecutor), but advanced and improved.
Jump To:
- Installation
- Simple Usage
- Default operators and functions
- Variables
- Multiple expressions
- Extra operators and functions
- Custom functions
- Custom operators
- Interpreting of identifiers
- Non-numeric values
- Error Handlers
Installation
|$ composer require avadim/ace-claculator
All instructions to install here: https://packagist.org/packages/avadim/ace-claculator
Sample Usage
Default operators, functions and constants
Default operators: + - * / ^
Arithmetic functions
- abs()
- avg()
- ceil()
- exp()
- expm1()
- floor()
- fmod()
- hypot()
- intdiv()
- log()
- log10()
- log1p()
- max()
- min()
- sqrt()
- round()
Trigonometric functions
- acos()
- acosh()
- asin()
- asinh()
- atan()
- atan2()
- atanh()
- atn() (alias of atan)
- cos()
- cosh()
- deg2rad()
- degrees() (alias of rad2deg)
- rad2deg()
- radians() (alias of deg2rad)
- sin()
- sinh()
- tan()
- tanh()
- tn() (alias of tan)
Default constants
PI = 3.14159265358979323846 E = 2.7182818284590452354
Also you can use any standard math constants from PHP - M_LOG2E, M_PI_2 etc
Variables
You can add own variables to executor and use their in expressions
Multiple expressions
You can execute multiple expressions in one by separating them with a semicolon
Extra operators and functions
You can load extensions with extra operators and functions by method loadExtension()
:
This extension load boolean operators: < <= > >= == != && ||
You can use boolean operators with extra function if()
Custom functions
Add custom function to executor:
Custom operators
A simple way to add an operator
Alternative way to add operator using specified class. Create the class of custom operator
And add the class to executor:
Interpreting of identifiers
Identifiers - start with a letter and consist of a sequence of letters and numbers. You can specify rules how to interpret them in calculations
Non-numeric values
Non-numeric values will cause warnings in arithmetic operations. However, you can set a special option to avoid this.
Error Handlers
Division by zero
Usually division by zero throws a . But you can redefine this behavior
Unknown Identifier
Usually unknown identifier throws a . But you can redefine this behavior
Unknown Variable
Usually unknown identifier throws a . But you can redefine this behavior
Support AceCalculator
if you find this package useful you just give me star on Github :)