我需要在某些PHP页面上评估用户定义的任意复杂度的逻辑表达式。假设表单域是主要变量,它将需要:PHP中的动态逻辑表达式解析/评估?
- 替换“varibles”表单 字段值;
- 手柄比较运算符, 微创==,<,< =,> =和>通过 符号,名称(例如当量,LT,LE,GE,分别GT );
- 处理布尔操作符不,和,或和 可能通过名称,符号XOR(例如, & &,||和^^分别!);
- 处理字符串 和数字的文字值;
- 是明文未XML(如“名字 ==‘’或姓氏==‘’);以及
- 合理高性能
现在年来我走了已经写递归下降解析器。这可能会建立一个表达式树并做这种事情,但那不是我在PHP中所享受的任务,所以我希望有些事情能够让我至少能够在那里获得一些方式。 ?
我能问,你有没有管理创建简单的表达,而不使用eval解析功能? – buggedcom 2011-11-15 21:19:02