php字符串的逻辑表达式评估

时间:2017-09-18 06:49:35

标签: javascript php evaluation

我希望用户在表单中输入一个字符串(或使用js接口为它们构建字符串),然后可以对服务器端进行逻辑评估。

例如:事件管理员写入文本区域"((36& 37)||(37& 38))&& ~42"进入fee_option表。注册人选择了选项37和38.然后,注册人收取一定的费用,因为表达式评估为真。我可以看到一个基本选项,用in_array($ one_number,$ options_selected_by_user)的结果替换每个数字,然后通过某种正则表达式安全性运行它,然后将其粘贴到eval($ str)中,但这实际上只是一个愚蠢的例子。

我的问题是:

  1. 是否有一种传统的语法来编写表达式,除了编写代码以进入eval语句之外还要进行评估?
  2. 是否有PHP库,脚本甚至博客文章在撰写此类文章时提供帮助?换句话说 - 每个人每次都为表单构建者编写用户输入的条件语句吗?
  3. 是否有专门用于通过用户界面构建逻辑语句的javascript库,即。也可能用一点点数学分组ors,ands和nots。

1 个答案:

答案 0 :(得分:1)

Symfony Expression Language为你的任务做得很好。试一试。