У меня есть строка, которую мне нужно найти, используя php, чтобы увидеть, присутствует ли какой-либо из 2-3 миллионов терминов. Строки могут быть длиной до 1000 слов, а условия поиска - до 5 слов.
Я пробовал strpos и strstr, но время выполнения превышает 60 секунд.
Может кто-нибудь предложить альтернативу?
Пока у меня есть следующее:
$query = "SELECT City FROM cities";
$result = mysql_query($query);
if ($row = mysql_fetch_array($result)) {
do {
$city = " " . $row['City'] . " ";
if(strpos($string, $city)!== False) {
echo $city . "<br />\n";
}
} while ($row = mysql_fetch_array($result));
}