Обратите внимание, я просто набираю код здесь. Это было бы общей идеей, но код может нуждаться в редактировании. На самом деле, это почти наверняка так.
$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, которая будет брать информацию и где-то ее хранить. Или поместите код прямо там, где находится вызов функции.
Что касается того, как его хранить, то многое зависит от того, что вы собираетесь с ним делать.