williams/xpression

评估用户提供的数学表达式。

dev-develop 2024-09-11 08:57 UTC

This package is auto-updated.

Last update: 2024-09-11 08:59:09 UTC


README

Xpression 是一个用于评估数学表达式字符串的 PHP 库,支持变量和可扩展的函数集。

安装

使用 Composer 安装 Xpression 的预发布版本

composer require williams/xpression:dev-develop

用法

一个简单的完整示例,展示 Xpression 的工作原理

require('vendor/autoload.php');
use Williams\Xpression\Evaluator;

$evaluator = new Evaluator();

echo $evaluator->evaluate('2*3+4'); // 10

使用 with() 方法设置变量

// Example using variables:
$evaluator->with([
 'a' => 5,
 'b' => 7
]);

echo $evaluator->evaluate('$b-$a'); // 2

您可以使用 affix() 方法更改变量的表示方式

$evaluator->affix('%');
echo $evaluator->evaluate('%b-%a'); // 2

存在许多内置函数,包括常见的函数,如:MINMAXAVGANDORIF

// Example using built-in function:
echo $evaluator->evaluate('MIN($a,$b)'); // 5

如果需要进一步的功能,可以扩展以添加额外的函数

$evaluator->functionLibrary->define('sum',function($values){
    return array_sum($values);
});


echo $evaluator->evaluate('SUM(4,5,6)'); // 15