khanhicetea/twigeval

使用 Twig 评估表达式

1.4.1 2020-06-14 15:45 UTC

This package is auto-updated.

Last update: 2024-09-15 01:09:55 UTC


README

Latest Stable Version Minimum PHP Version Build Status GitHub license

安全 处理从字符串变量中的表达式而不使用 eval(看起来很 邪恶)。

核心

使用 twig 模板引擎生成结果,因此您可以使用任何 twig 语法及其过滤器。

用法

$ composer require khanhicetea/twigeval
/*
$cacheDir could be :
    - false : no use cache (mean use eval function), be carefully !
    - null : use sys_get_temp_dir() to get system temp directory as cache dir
    - string : cache directory path
*/
$cacheDir = null;
$calculator = new KhanhIceTea\Twigeval\Calculator($cacheDir);
$math = $calculator->number('a / 4 + b * 3', ['a' => 16, 'b' => 3]); // => 13
$boolean1 = $calculator->isTrue('(a and b) or c', ['a' => false, 'b' => true, 'c' => false]); // => false
$boolean2 = $calculator->isFalse('(a and b) or c', ['a' => false, 'b' => true, 'c' => false]); // => true
$string = $calculator->calculate('{{ a|reverse }} world !', ['a' => 'hello']); // => olleh world !

许可证

MIT 许可证 (MIT) 版权所有 © 2018 KhanhIceTea