Я так часто отвечаю.Но регулярное выражение позволит избежать большей части зацикливания.
// get words
preg_match_all(':\p{L}{2,}:u', $text_file, $words);
$words = end($words);
// make a search regex "abc|foobar|xyz|text|.."
$rx_words = implode("|", $words);
// find all words that exist on a line
preg_match_all(':^($rx_words)$:', file_get_contents("LINES"), $cmp);
// everything found if:
$found_all = !array_diff($cmp[1], $words);
Чтение всего файла LINES
можно избежать с помощью некоторого дополнительного кодирования.Но я хотел, чтобы все было просто.