Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我和几个朋友在做一个小项目,我负责大部分的 PHP 代码。我们目前有一个半工作的网站,您可以在其中输入配方成分并找到要创建的完整配方。
我目前遇到的问题是允许用户输入多个单词成分(红糖、天使头发意大利面等),而不强制他们使用逗号作为分隔符。
我目前正在使用每个无效字符来分隔(空格、逗号、数字等),但这只会允许搜索 1 个单词的成分。
我考虑过可能创建一个包含所有成分的数组并检查用户的输入是否与其中任何一个匹配,然后将它们挑选出来,但我不确定这是否是最好的解决方案。
有一个文本框的基于 javascript 的解决方案怎么样。当你开始输入时,它会在下面弹出另一个文本框,提示你可以将多种成分分开。将它们命名为“ingredients[]”,因此 $_POST['ingredients'] 是 php 中的一个数组,您可以遍历它们。
更简单的解决方案是做你所做的,用任何空格、逗号等分隔,然后根据有多少关键字与成分列表匹配来对搜索结果进行排名。