Functie PHP: levenshtein

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?”;

?>

Comentati