esyede/matematika 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

esyede/matematika

最新稳定版本:v1.0.0

Composer 安装命令:

composer require esyede/matematika

包简介

Simple mathematical equation parser for PHP

README 文档

README

Simple mathematical equation parser for PHP.

Installation

composer require esyede/matematika

Usage

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

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

// Positive Integer Tests

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

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

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

// Float Tests

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

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


// Negative Unary Operator Tests

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

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


// Variable Name With Number Test

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

// Math Functions Test

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

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

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

统计信息

  • 总下载量: 1
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-11-13

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固