本文实例讲述了php查询相似度最高的字符串的方法。分享给大家供大家参考。具体如下:
根据传入的字符串和数组,返回数组中相似度最高的字符串
1. php代码如下:
function closest_word($input, $words) { $shortest = -1; foreach ($words as $word) { $lev = levenshtein($input, $word); if ($lev == 0) { $closest = $word; $shortest = 0; break; } if ($lev alaska,'az'=>arizona,'ar'=>arkansas,'ca'=>california,'co'=>colorado,'ct'=>connecticut,'de'=>delaware,'dc'=>district of columbia,'fl'=>florida,'ga'=>georgia,'hi'=>hawaii,'id'=>idaho,'il'=>illinois,'in'=>indiana,'ia'=>iowa,'ks'=>kansas,'ky'=>kentucky,'la'=>louisiana,'me'=>maine,'md'=>maryland,'ma'=>massachusetts,'mi'=>michigan,'mn'=>minnesota,'ms'=>mississippi,'mo'=>missouri,'mt'=>montana,'ne'=>nebraska,'nv'=>nevada,'nh'=>new hampshire,'nj'=>new jersey,'nm'=>new mexico,'ny'=>new york,'nc'=>north carolina,'nd'=>north dakota,'oh'=>ohio,'ok'=>oklahoma,'or'=>oregon,'pa'=>pennsylvania,'ri'=>rhode island,'sc'=>south carolina,'sd'=>south dakota,'tn'=>tennessee,'tx'=>texas,'ut'=>utah,'vt'=>vermont,'va'=>virginia,'wa'=>washington,'wv'=>west virginia,'wi'=>wisconsin,'wy'=>wyoming);$input_state = 'wiscsin';$state = closest_word($input_state ,array_values($united_state_list));echo $state;
希望本文所述对大家的php程序设计有所帮助。