PHP инструмент - Извлечение доменных имен из файла зоны? - PullRequest
1 голос
/ 06 мая 2010

У меня есть доступ к файлу зоны для ТВЛ. Как я могу извлечь только доменные имена самым быстрым способом?

Есть предложения, как их хранить в базе данных / файле? Их миллионы.

1 Ответ

1 голос
/ 06 мая 2010

Обратите внимание, я просто набираю код здесь. Это было бы общей идеей, но код может нуждаться в редактировании. На самом деле, это почти наверняка так.

$fin = fopen('your zone file', 'r');
while (!feof($fin))
{
    $matches = array();
    $line = trim(fgets($fin));
    // only care about lines that are ip addresses or aliases
    if (preg_match('/^(\S+)\s+((?:IN\s+)?)(A|AAAA|CNAME)\s+(\S+)$/i', $line, $matches))
    {
        $subdomain = $matches[1];
        $ip_or_alias = $matches[4];
        do_something($subdomain, $ip_or_alias);
    }
}
fclose($fin);

Вы бы определили функцию do_something, которая будет брать информацию и где-то ее хранить. Или поместите код прямо там, где находится вызов функции.

Что касается того, как его хранить, то многое зависит от того, что вы собираетесь с ним делать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...