Wallogit.com
2017 © Pedro Peláez
Parsing and evaluating mathematical formulas given as strings.
Formula Parser is a library for parsing and evaluating mathematical formulas given as strings., (*2)
Supports:, (*3)
Requires PHP 5.4 or higher., (*4)
To install with Composer:, (*5)
``` sh composer require denissimon/formula-parser, (*6)
Usage ----- ``` php require_once __DIR__ . '/vendor/autoload.php'; use FormulaParser\FormulaParser; $formula = '3*x^2 - 4*y + 3/y'; $precision = 2; // Number of digits after the decimal point try { $parser = new FormulaParser($formula, $precision); $parser->setVariables(['x' => -4, 'y' => 8]); $result = $parser->getResult(); // [0 => 'done', 1 => 16.38] } catch (\Exception $e) { echo $e->getMessage(), "\n"; }
The $precision parameter has a default of 4, and it's not required to specify:, (*7)
php
$parser = new FormulaParser('3+4*2/(1-5)^8');
$result = $parser->getResult(); // [0 => 'done', 1 => 3.0001], (*8)
The initialized object $parser has the following methods:, (*9)
setValidVariables($array) Overwrites default valid variables., (*10)
setVariables($array) Sets variables., (*11)
getResult() Returns an array [0 => v1, 1 => v2], where v1 is 'done' or 'error', and v2 is a computed result or validation error message, respectively., (*12)
getFormula() Returns the text of the formula passed to the constructor., (*13)
More usage examples can be found in tests/FormulaParserTest.php, (*14)
Licensed under the MIT license, (*15)