How can PHP be used to retrieve DNS records and handle IPv4 and IPv6 addresses?
To retrieve DNS records and handle IPv4 and IPv6 addresses in PHP, you can use the `dns_get_record` function to fetch DNS records for a given domain name. This function returns an array of associative arrays containing information about the DNS records. To handle IPv4 and IPv6 addresses specifically, you can check the `type` key in each record and filter out the records based on their type.
$domain = 'example.com';
$dns_records = dns_get_record($domain, DNS_ALL);
$ipv4_addresses = [];
$ipv6_addresses = [];
foreach($dns_records as $record){
if($record['type'] == 'A'){
$ipv4_addresses[] = $record['ip'];
} elseif($record['type'] == 'AAAA'){
$ipv6_addresses[] = $record['ipv6'];
}
}
echo "IPv4 Addresses: " . implode(', ', $ipv4_addresses) . "\n";
echo "IPv6 Addresses: " . implode(', ', $ipv6_addresses);