Поиск по ключевым словам в БД

Всем привет.
Помогите, пожалуйста. Как правильно реализовать поиск в БД через PHP по ключевым словам.
Я имею 2 таблицы:

  1. table_1 является словарем с 2 столбцами (id и keyword)
  2. table_2 хранит в себе информацию, в частности в таблиц есть поле text.

Я понимаю, что мне необходимо в цикле обходить table_2['text'] проверяя наличие всех table_1['keyword'].
Я пробовал самостоятельно реализовать через foreach, но ничего не получилось.


Ответы (1 шт):

Автор решения: Андрей 9460

Это делается одним запросом в БД. +1
Но если нужно на php :

$tabl1 = [
    '1' => 'keyword',
    '2' => 'ipsum',
    '3' => 'dolor',
    '4' => 'key'
];

$tabl2 = [
    'Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua',
    'Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua',
    'Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua',
    'Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua',
];

$size_tabl2 = count($tabl2) -1;

for($i = 0; $i <= $size_tabl2; $i++){

    for (reset($tabl1); ($key = key($tabl1)); next($tabl1))
    {
        if(strripos($tabl2[$i], $tabl1[$key])){
            echo "№ " . $i . " text : " . $tabl2[$i];
            echo "keyword : " . $tabl1[$key];
            echo "<br>";
        }

    }

}
→ Ссылка