Таким образом, есть деталь комментария. Человек использует текстовое поле, чтобы скопировать полный комментарий, и код PHP проверяет, подробности комментария находятся в комментарии. Пользователь не может перейти к следующему заданию, пока комментарий и детали комментария не совпадут на 80%.
Я пробовал много функций сравнения строк (например, strcmp, Similar_text), но ничего не получалось, потому что комментарий намного длиннее детали комментария и не возвращает правильный процент.
Я также пытаюсь написать код, который может справиться с этим, но он становится странным и возвращает более 100%, когда я помещаю более длинный текст (это ближе к результату, но не идеально)
$fcomment = $request->input('full_comment');
$comment = $request->input('comment');
$fc = explode(' ', $fcomment);
$c = explode(' ', $comment);
$match = 0;
for ($i=0; $i < count($c); $i++) {
for ($j=0; $j < count($fc); $j++) {
if ($c[$i] == $fc[$j]) {
$match ++;
}
}
}
$length = count($c);
$onepercent = $length/100;
$percentage = $match/$onepercent;
echo $percentage;
Вот пример комментариев:
Комментарий подробно:
Nunc vel tempor eros, sit amet suscipit justo.
Полный комментарий:
Lorem Ipsum Dolor Sit Amet, Concetetur Adipiscing Elit. Nunc vel tempor eros, sit amet suscipit justo. Proin lorem erat, tempus non neque ac, sollicitudin feugiat lectus. Phasellus justo lacus, aliquet nec dapibus ac, cursus sed quam. Aenean sagittis lacus justo, sit amet hendrerit mi pretium eget. Vestibulum ante ipsum primis у faucibus orci luctus et ultrices posuere cubilia Curae; Fusce cursus tincidunt mi sed tristique. Курабитур плацерат в самом начале спора.
Задача ещё не решена.
Других решений пока нет …