我想使用 PHP 代码创建高级查询生成器。
输入 :
search_String_1 AND( search_String_2 OR search_String_3)
... 很快
目标 :
检查 AND / OR 运算符规则,包括 () 括号并将其转换为以下字符串:查询:
db.table.search_field LIKE '
search_String_1' AND ( db.table.search_field LIKE 'search_String_2' OR db.table.search_field LIKE 'search_String_3')'
我的努力:
我用过preg_match()
,但我不知道如何通过最佳解决方案检查所有运算符和查询序列。此外,我还通过 " blank_space
" 扩展了用户输入,因此我将所有令牌都放在一个数组中。我仍在努力寻找解决方案。如果我错了或有好的解决方案,请建议我这样做。
谢谢你的帮助。