PHPackages                             esyede/matematika - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. esyede/matematika

ActiveLibrary[Parsing &amp; Serialization](/categories/parsing)

esyede/matematika
=================

Simple mathematical equation parser for PHP

v1.0.0(3y ago)11MITPHPPHP ^5.4.0

Since Nov 5Pushed 3y ago1 watchersCompare

[ Source](https://github.com/esyede/matematika)[ Packagist](https://packagist.org/packages/esyede/matematika)[ RSS](/packages/esyede-matematika/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)DependenciesVersions (2)Used By (0)

matematika
==========

[](#matematika)

Simple mathematical equation parser for PHP.

#### Installation

[](#installation)

```
composer require esyede/matematika
```

#### Usage

[](#usage)

```
require __DIR__ . '/vendor/autoload.php';

$math = new Esyede\Matematika\Math();

// Positive Integer Tests

var_dump($math->evaluate('10 / 5'));                      echo ''; // int(2)
var_dump($math->evaluate('(2 + 3) * 4'));                 echo ''; // int(20)
var_dump($math->evaluate('1 + 2 * ((3 + 4) * 5 + 6)'));   echo ''; // int(83)
var_dump($math->evaluate('9 * (3+8) - 6 - 45'));          echo ''; // int(48)
var_dump($math->evaluate('1 * 2 + ((3 + 4) * 5 + 6)'));   echo ''; // int(43)
var_dump($math->evaluate('(1 + 2) * (3 + 4) * (5 + 6)')); echo ''; // int(231)

$math->put('a', 4);
var_dump($math->evaluate('($a + 3) * 4')); echo ''; // int(28)

$math->put('a', 5);
var_dump($math->evaluate('($a + $a) * 4')); echo ''; // int(40)

// Float Tests

var_dump($math->evaluate('1.45 + 3'));                                 echo ''; // float(4.45)
var_dump($math->evaluate('0.45 + 3.5'));                               echo ''; // float(3.95)
var_dump($math->evaluate('10.6 / 1.2'));                               echo ''; // float(8.83333333333)
var_dump($math->evaluate('(1.65 + 2) * (3.1415 + 4) * (5 + 6.8989)')); echo '';
// float(310.162379378) (but 310.1623793775 in Apple and Windows Calculators)

$math->put('a', 5.36464);
var_dump($math->evaluate('($a + $a) * 4')); echo ''; // float(42.91712)

// Negative Unary Operator Tests

var_dump($math->evaluate('3 - -3'));                      echo ''; // int(6)
var_dump($math->evaluate('-2 + -3'));                     echo ''; // int(-5)
var_dump($math->evaluate('-2.5 / 0.5'));                  echo ''; // float(-5)
var_dump($math->evaluate('-9 * (-3+8) - 6 - -45'));       echo ''; // int(-6)
var_dump($math->evaluate('(10 / 5 * -(1 + 2))'));         echo ''; // int(-6)
var_dump($math->evaluate('-7.3 * (-3.2+8) - 6 - -45.5')); echo ''; // float(4.460000000000001)

$math->put('a', - 5.5);
var_dump($math->evaluate('($a + $a) * 4')); echo ''; // float(-44)

// Variable Name With Number Test

$math->put('a1', 5)->put('a2', 5);
var_dump($math->evaluate('($a1 + $a2) * 4')); echo ''; // int(40)

// Math Functions Test

$math->put('a', 5);
var_dump($math->evaluate('10 + CEIL($a / 4)'));  echo ''; // int(12)
var_dump($math->evaluate('10 + FLOOR($a / 4)')); echo ''; // int(11)

$math->put('a', 9);
var_dump($math->evaluate('10 + SQRT($a)')); echo ''; // int(13)

$math->put('a', 10);
var_dump($math->evaluate('10 + CEIL(SQRT($a))')); echo ''; // int(14)
```

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1283d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/10582583?v=4)[Suyadi](/maintainers/esyede)[@esyede](https://github.com/esyede)

---

Top Contributors

[![esyede](https://avatars.githubusercontent.com/u/10582583?v=4)](https://github.com/esyede "esyede (2 commits)")

### Embed Badge

![Health badge](/badges/esyede-matematika/health.svg)

```
[![Health](https://phpackages.com/badges/esyede-matematika/health.svg)](https://phpackages.com/packages/esyede-matematika)
```

###  Alternatives

[mtdowling/jmespath.php

Declaratively specify how to extract elements from a JSON document

2.0k472.8M135](/packages/mtdowling-jmespathphp)[opis/closure

A library that can be used to serialize closures (anonymous functions) and arbitrary data.

2.6k230.0M284](/packages/opis-closure)[masterminds/html5

An HTML5 parser and serializer.

1.8k242.8M229](/packages/masterminds-html5)[sabberworm/php-css-parser

Parser for CSS Files written in PHP

1.8k191.2M65](/packages/sabberworm-php-css-parser)[michelf/php-markdown

PHP Markdown

3.5k52.4M345](/packages/michelf-php-markdown)[jms/metadata

Class/method/property metadata management in PHP

1.8k152.8M88](/packages/jms-metadata)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
