Рандомный вывод ключевых слов

BasePelleta
На сайте с 29.05.2008
Offline
120
668

Для уникализации контента хочу рандомизировать вывод ключевых слов в посте.

Нашел такую функцию и адаптировал.

function keyword($text,$lenkey,$kolkey) 

{


#$text=strtolower(strip_tags($text));//удаляем таги и все в нижний регистр

$text=strip_tags($text);

#$text = str_replace("quot", "", "$text");


$excluded = array("quot", "котор", "nbsp", "ndash", "час", "буду" , "будет", "только", "друг",
"данн");

$text = str_replace($excluded, "", $text);

function russtrtolower($text)
{
$text = strtolower($text);
$up = array("А", "Б", "В", "Г", "Д", "Е", "Ё", "Ж", "З", "И", "Й", "К", "Л", "М", "Н", "О", "П", "Р", "С", "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь", "Э", "Ю", "Я");
$lower = array("а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", "й", "к", "л", "м", "н", "о", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", "щ", "ъ", "ы", "ь ", "э", "ю", "я");
$text = str_replace($up, $lower, $text);
return $text;
}

$text = russtrtolower($text);

preg_match_all("/[а-яa-zА-Я0-9]{".$lenkey.",}+/is",$text,$word);


$return = array_count_values($word[0]);
arsort($return);
$return = array_slice($return, 0, $kolkey);
$return = array_keys($return);

return $return;
}

$rezult=keyword($text,6,10);
$rezult_keyword=implode(", ",$rezult);

Работает.

Теперь голову ломаю над алгоритмом рандома вывода.

Рандом хочу построить на основе чисел (типа подсчитать кол-во символов в словах, потом поделить на кол-во слов и т.д.)

Самый простой вариант был бы сортировать ключевики по алфавиту, но мне так не хочется ...

Может кто-то сталкивался с аналогичной проблемой? Как ее решили?

BasePelleta добавил 19-02-2011 в 22:09

Да, еще момент. О назначении сего ...

Есть два сайта и используют одну базу, поэтому возникла необходимость страницам вешать разные ключевики ...

BasePelleta добавил 20-02-2011 в 12:29

Что ни у кого не было в этом необходимости?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий