我们正在构建一个SaaS产品,帮助公交运营商生成账单并将发票发送给他们的客户。问题是,每个运营商(我们的客户)都有他/她的独特公式来计算电费。
我们不能一概而论,也不能把规范公式放在适当的位置。但我可以告诉你,所有的公式都接受相同的输入变量,并产生一个单一的输出变量,称为关税。
我们是用PHP构建的,我首先想到的是让客户在文本区域中编写公式,然后使用eval()来执行它。但这听起来很愚蠢。
有没有一种方法可以构建一个交互式的公式生成器,让客户可以用来构建他们的公式?如果是这样,我是否可以将最终的公式存储在数据库中?或者有没有一种不使用eval()的方法?
发布于 2013-05-02 12:26:09
我首先想到的是让客户在文本区域中编写公式,然后使用eval()来执行它
这是非常容易出错的,并可能导致恼火和沮丧的用户。
解决这类问题的方法有很多,但规则引擎似乎特别适合。规则引擎允许您使用元数据指定这种类型的处理,而不是对其进行硬编码。一些规则引擎甚至提供了终端用户友好的用户界面。
我有很好的使用Drools的经验,尽管我还没有看过它如何与PHP集成。
规则引擎远比在用户提供的函数上调用eval()复杂得多,但它更有可能带来可维护的软件和满意的客户。
https://stackoverflow.com/questions/16330285
复制相似问题