Functie PHP: levenshtein
Aug 27
Programare Nu exista comentarii
Manual: http://www.php.net/manual/en/function.levenshtein.php
Este o functie descoperita de curand, de mine cel putin, care ofera posibilitatea de a aproxima asemanarea intre doua string-uri de maxim 255 de caractere prin returnarea unei valori intre 0 si 255 in functie de algoritmul levenshtein.
Aparent, mi se pare o super idee folosirea acestei functii pentru a returna valori de genul “Did you mean: ….” in stilul Google.
Un exemplu de cod sursa care implica folosirea acestei functii:
<?php
function runlevenshtein($dictionary_arr, $word)
{
$best_match = $dictionary_arr[0];
$match_value = levenshtein($dictionary_arr[0], $word);
foreach($dictionary_arr as $w) {
$value = levenshtein($word, $w);
if( $value < $match_value )
{
$best_match = $w;
$match_value = $value;
}
}
return($best_match);
}
$dictionary = array(
“php”, “javascript”, “css”
);
$word = “japhp”;
$best_match = runlevenshtein($dictionary,$word);
echo “Did you mean the ‘$best_match’ category?”;
?>
RSS
Comentarii recente