У меня большой текстовый файл, который проверяется на наличие "плохих URL". При обработке нескольких URL-адресов для этого списка требуется около 1 секунды на URL-адрес, чтобы убедиться, что его нет в этом списке.
Вот мой текущий код:
$badDomainsFile = file_get_contents(base_path().'/resources/txt/bad-domains.txt');
$badDomains = explode("\n",$badDomainsFile);
foreach ($badDomains as $badDomain){
if($badDomain===$domain){
$isBadDomain = true;
break;
}
}
Я подумал, что мог бы ускорить работу с помощью некоторого кода в стиле exe c ('grep -n $ path'), но у меня возникают проблемы с его работой на локальном компьютере (windows), и я считаю, что путь к файлу будет другим сервер (linux) в любом случае? Все, что в laravel на моем локальном компьютере, запускается через Homestead, но я также запутался, если, возможно, сценарий php будет запускаться для этого пути к файлу или для моего собственного локального системного местоположения веб-сайта?
Любой другие идеи, чтобы ускорить этот сценарий? (Я попытался запустить построчный скрипт в стиле fgets (), но это заняло до 11 секунд на URL.)