php之上的迷你脚本语言

php之上的迷你脚本语言,php,scripting,programming-languages,embedded,Php,Scripting,Programming Languages,Embedded,我正在寻找一种在php上运行的迷你脚本语言,我需要解释简单的公式(一种用于电子表格的脚本语言可以做到这一点)。我需要的主要内容是变量、矫揉造作和数学运算条件以及if语句 例: 如果(价格1>360) 结果=(价格1*Q)+价格1*Q/17 否则…我建议您查看一下模板系统中使用的一些概念,如并实现您自己的。例如,允许您执行以下操作: {* $height=4, $width=5 *} {math equation="x + y" x=$height y=$width} 如果您想要一个关于如何创建

我正在寻找一种在php上运行的迷你脚本语言,我需要解释简单的公式(一种用于电子表格的脚本语言可以做到这一点)。我需要的主要内容是变量、矫揉造作和数学运算条件以及if语句

例:

如果(价格1>360) 结果=(价格1*Q)+价格1*Q/17
否则…

我建议您查看一下模板系统中使用的一些概念,如并实现您自己的。例如,允许您执行以下操作:

{* $height=4, $width=5 *}
{math equation="x + y" x=$height y=$width}
如果您想要一个关于如何创建它们的一般指南,那么您可以直接获取。由于使用
eval()
进行计算,因此仍然存在问题的风险


此外,为了评估RPN(反向波兰符号)以支持操作符:
+,-,*,/,IF,THEN,SWAP,DUP,=,>,=
,您还可以用PHP编写这些小脚本并使用。但是,由于这就像打开潘多拉的盒子,在将其视为可行的选项之前,您应该真正知道您可以信任传递的代码(即,这是非常危险的,真的,特别是如果这些公式是由用户输入的-当用户提供要执行的代码时,我永远不会使用它们)


另一种选择(可能更安全)是使用某种形式的javascript解释器来执行代码段。据我所知,有两个PHP项目可能会有所帮助(尽管它们似乎处于休眠状态):和。如果您可以安装扩展,那么可能是一个更好的选择。

您可以使用嵌入式解释器,例如类似Javascript的解释器或包装对spider monkey的命令行调用。

那么为什么不编写PHP呢?添加更多的语言层只会减慢速度。我需要限制用户可以做什么,我想将其转换为非英语语言。框架将如何帮助我?@Ayoub您可以在此处阅读@sombe我不会使用它来构建应用程序,但在应用程序的一部分,用户将输入带有条件的简单数学公式