Задать вопрос
@E6APB

Это нормально так разрабатывать боты?

У меня простой бот. Вопрос-ответ. Никаких контекстов, сессий и т. д. У меня код выглядит примерно так:

<?php

if ($query === 'привет') {
    echo 'Привет';
} elseif ($query === 'фыввфывфв') {
    echo 'Ага';
} elseif (preg_match('//', $query) {
    echo 'Ясно';
} else {
    echo 'Я не понял тебя';
}


Не является ли это говнокодом?
  • Вопрос задан
  • 370 просмотров
Подписаться 1 Оценить 1 комментарий
Решения вопроса 1
LeeMasagos
@LeeMasagos
E-commerce
Лучше храните слова в том же json + один класс который это все будет обрабатывать и давать результат
Конечно говнокод, это же для 1000 слов 1000 таких if ?
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
1. Смотрите switch-case
2. Используйте рекурсивный спуск по веткам наилучших соответствий для выдачи (отображения/echo) нужных вариантов ответа.

UPD: Если хочется реально круто сделать:
Советую попробовать сравнение через Stumper API.
По наибольшему проценту совпадения с имеющимися у вас фразами - даёте нужный ответ.
Ответ написан
Комментировать
KorniloFF
@KorniloFF
Работаю по font-end / JS
Конечно, ГК.
Нужно хотя бы использовать регулярные выражения, поскольку 'Привет' !== 'привет!'.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы