phillip
Полезный
- Регистрация
- 4 Сен 2007
- Сообщения
- 411
- Реакции
- 15
- Автор темы
- #1
Помогите сделать. для доргенчика. Суть в том что скрипт берет случайный ключевик из файла. например
Дешевое авто купить.
Разбивает ключевик на массив, значение массива- слово ключевика. И должен в тексте искать совпадения с этим словом. Если нашел- меняет. Например:
Текст- Ауди представила свое новое авто на автосалоне в Париже.
Ключевик- Дешевое авто купить.
Реузльтат- Ауди представила свое новое Дешевое авто купить на автосалоне в Париже.
Пробую делать так- не выходит нифига. Подскажите как сделать
Я не могу понять как сделать мне чтобы все было нормульно. Чтобы сохранялись знаки препинания. Чтоб в итоге на выходе у меня был string с новым текстом. Выручите, пожалуйста
Дешевое авто купить.
Разбивает ключевик на массив, значение массива- слово ключевика. И должен в тексте искать совпадения с этим словом. Если нашел- меняет. Например:
Текст- Ауди представила свое новое авто на автосалоне в Париже.
Ключевик- Дешевое авто купить.
Реузльтат- Ауди представила свое новое Дешевое авто купить на автосалоне в Париже.
Пробую делать так- не выходит нифига. Подскажите как сделать
Код:
$text= 'Ауди представила свое новое авто на автосалоне в Париже.';
$keys = file("keys.txt");
$key= array_rand($keys); // Получили случаный ключ массива. Следовательно, $keys[$key]- случайная строка из файла
$words= preg_split('/ /', $keys[$key], -1, PREG_SPLIT_OFFSET_CAPTURE); //Разбили строку из файла на слова
$textwords= preg_split('/ /', $text, -1, PREG_SPLIT_OFFSET_CAPTURE); //Разбили исходный текст на слова
$newtext = array();
$num = 0;
foreach ($textwords as $textword) { //Для каждого слова исходного текста выполняем цикл
foreach ($words as $word) { //Для каждого слова из ключевика делаем действия....
if ($word[0] == $textword[0]) { //Если слово ключевика совпадает с словом в тексте...
$newtext[$num] = $keys[$key]; //Элементом нового массива записываем ключевик (строка из файла)
echo $keys[$key];
}
else { //Если не совпадает, то...
$newtext[$num] = $word[0];
echo '<h3>'.$word[0].'</h3>';
}
$num++;
}
}
echo implode(",", $newtext);