mrdubz
@mrdubz
front end developer

Как сделать генератор словосочетаний на PHP?

Есть два файла - скажем, firstword.txt c прилагательными и secondword.txt с существительными, в файлах все слова идут с новой строки. Как выводить одно случайное слово из первого файла и случайное из второго, чтобы получалось рандомное словосочетание?
  • Вопрос задан
  • 2896 просмотров
Решения вопроса 1
$words1 = file('firstword.txt');
$words1MaxIndex = count($words1) - 1;

$words2 = file('secondword.txt');
$words2MaxIndex = count($words2) - 1;

$randomPhrase = $words1[mt_rand(0, $words1MaxIndex)] . ' ' . $words2[mt_rand(0, $words2MaxIndex)];
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
nalomenko
@nalomenko
Руководитель отдела разработок в студии «Lava»
Зависит от того, сколько слов в каждом файле, и от того, на какой кусок оперативной памяти Вы рассчитываете :)
Самый простой вариант — прочитать оба файла в строковые переменые, сделать им explode() c делимитером "\n" или "\r\n" (зависит от формата Вашего файла) и выбрать из обоих результатов-массивов по случайному слову с номером:
$n = rand(0, count($result_array) - 1)

Хотя кто мешает хранить словари в базе данных и выбирать их по критерию ORDER BY RAND() LIMIT 1 ?
Ответ написан
@frees2
идеально использовать словарь тропов а не слов, подбирать под заголовки сообщений, в частности бродского, был такой текстовый файл, помниЦа паркер принял его за живого человека
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Ведисофт Екатеринбург
от 25 000 ₽
YCLIENTS Москва
от 200 000 до 350 000 ₽
Бюро Цифровых Технологий Санкт-Петербург
от 120 000 до 180 000 ₽
04 мая 2024, в 17:58
10000 руб./за проект
04 мая 2024, в 17:40
1000 руб./за проект
04 мая 2024, в 17:35
150000 руб./за проект