<分区>
假设我有一个如下所示的 MySQL 表,其中包含组织中的名称列表以及每个名称的 ID。
id name
1 John Doe
2 Richard Smith
3 Jane Market
... ...
给定的用户将查询此人的名字和/或姓氏(可能会使用拼写错误和昵称),php 应该返回最接近他们查询的匹配项。
例如,如果用户输入“ricky”(Richard 的昵称),它应该返回 Richard Smith 的 ID。
<分区>
假设我有一个如下所示的 MySQL 表,其中包含组织中的名称列表以及每个名称的 ID。
id name
1 John Doe
2 Richard Smith
3 Jane Market
... ...
给定的用户将查询此人的名字和/或姓氏(可能会使用拼写错误和昵称),php 应该返回最接近他们查询的匹配项。
例如,如果用户输入“ricky”(Richard 的昵称),它应该返回 Richard Smith 的 ID。
最佳答案
对于昵称,您必须创建一个单独的 MySQL 表,并进行查找(多对一关系)。
对于拼写错误,您将不得不循环所有姓名并将它们与用户使用 levenshtein 输入的内容进行比较功能,或 similar_text功能。用户提供的注释会有所帮助。
关于php - 使用 MySQL 和 PHP 中的名称进行智能最接近匹配检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23943324/