我们有这样的事情:
switch ($name)
{
/** Prune **/
case 'prune':
echo 'Prune command: Deletes ALL of the messages from the chat.';
break;
/** Lock **/
case 'lock':
echo 'Lock command: Locks the chat, nobody can talk!';
break;
/** Unlock **/
case 'unlock':
echo 'Unlock command: Unlocks the chat, everybody can talk!';
break;
/** Broadcast **/
case 'broadcast':
echo 'Broadcast command: Send a general broadcast message.';
break;
/** If command not found, echo suggestions.. **/
default:
echo 'Command not found, try these: /prune, /lock, /unlock, /broadcast';
break;
}
我们有一个发送数据的表单,这些数据将存储到变量$name
。
用户存储了以下字词: prunne 。
显然,它会违反案例。
但我想要做的是,IF字段与任何可用案例类似,建议用户。
例如,案例prunne,
将回复:未找到,您的意思是修剪*?
我该怎么做?
答案 0 :(得分:1)
我可以指出你正确的方向:
http://php.net/manual/en/function.levenshtein.php
是一个可以用于你的事业的php函数,在那个页面上也有一个很好的例子。
相关的堆栈溢出问题有关于字符串何时超过255个字符的更多信息:
String similarity in PHP: levenshtein like function for long strings