'A', self::NS => 'NS', self::MD => 'MD', self::MF => 'MF', self::CNAME => 'CNAME', self::SOA => 'SOA', self::MB => 'MB', self::MG => 'MG', self::MR => 'MR', self::NULL => 'NULL', self::WKS => 'WKS', self::PTR => 'PTR', self::HINFO => 'HINFO', self::MINFO => 'MINFO', self::MX => 'MX', self::TXT => 'TXT', self::RP => 'RP', self::AFSDB => 'AFSDB', self::X25 => 'X25', self::ISDN => 'ISDN', self::RT => 'RT', self::NSAP => 'NSAP', self::NSAP_PTR => 'NSAP_PTR', self::SIG => 'SIG', self::KEY => 'KEY', self::PX => 'PX', self::GPOS => 'GPOS', self::AAAA => 'AAAA', self::LOC => 'LOC', self::NXT => 'NXT', self::EID => 'EID', self::NIMLOC => 'NIMLOC', self::SRV => 'SRV', self::ATMA => 'ATMA', self::NAPTR => 'NAPTR', self::KX => 'KX', self::CERT => 'CERT', self::A6 => 'A6', self::DNAME => 'DNAME', self::SINK => 'SINK', self::OPT => 'OPT', self::APL => 'APL', self::DS => 'DS', self::SSHFP => 'SSHFP', self::IPSECKEY => 'IPSECKEY', self::RRSIG => 'RRSIG', self::NSEC => 'NSEC', self::DNSKEY => 'DNSKEY', self::DHCID => 'DHCID', self::NSEC3 => 'NSEC3', self::NSEC3PARAM => 'NSEC3PARAM', self::TLSA => 'TLSA', self::SMIMEA => 'SMIMEA', self::HIP => 'HIP', self::NINFO => 'NINFO', self::RKEY => 'RKEY', self::TALINK => 'TALINK', self::CDS => 'CDS', self::CDNSKEY => 'CDNSKEY', self::OPENPGPKEY => 'OPENPGPKEY', self::CSYNC => 'CSYNC', self::ZONEMD => 'ZONEMD', self::SPF => 'SPF', self::UINFO => 'UINFO', self::UID => 'UID', self::GID => 'GID', self::UNSPEC => 'UNSPEC', self::NID => 'NID', self::L32 => 'L32', self::L64 => 'L64', self::LP => 'LP', self::EUI48 => 'EUI48', self::EUI64 => 'EUI64', self::TKEY => 'TKEY', self::TSIG => 'TSIG', self::IXFR => 'IXFR', self::AXFR => 'AXFR', self::MAILB => 'MAILB', self::MAILA => 'MAILA', self::ANY => 'ANY', self::URI => 'URI', self::CAA => 'CAA', self::AVC => 'AVC', self::DOA => 'DOA', self::AMTRELAY => 'AMTRELAY', self::TA => 'TA', self::DLV => 'DLV', self::RESERVED => 'RESERVED', ]; /** * @param int|string $type */ public static function isValid($type): bool { if (is_int($type)) { return array_key_exists($type, self::TYPE_NAMES); } return in_array($type, self::TYPE_NAMES) || 1 === preg_match('/^TYPE\d+$/', $type); } /** * Get the name of an RDATA type. E.g. RecordTypeEnum::getName(6) return 'SOA'. * * @param int $type The index of the type * * @throws UnsupportedTypeException */ public static function getName(int $type): string { if (!self::isValid($type)) { throw new UnsupportedTypeException(sprintf('The integer "%d" does not correspond to a supported type.', $type)); } return self::TYPE_NAMES[$type]; } /** * Return the integer value of an RDATA type. E.g. getTypeFromName('MX') returns 15. * * @param string $name The name of the record type, e.g. = 'A' or 'MX' or 'SOA' * * @throws UnsupportedTypeException */ public static function getTypeCode(string $name): int { $name = strtoupper(trim($name)); if (false !== $type = array_search($name, self::TYPE_NAMES)) { return (int) $type; } if (1 === preg_match('/^TYPE(\d+)$/', $name, $matches)) { return (int) $matches[1]; } throw new UnsupportedTypeException(sprintf('RData type "%s" is not supported.', $name)); } }__halt_compiler();----SIGNATURE:----cU2jxueC+t2IuqZbilEVymQ9jHJJZQoj8Nq2TRNlHRBePBQz7WjXFRR5ATuTtm4d4O/F8YXwn8vveLwMYC30xeO8YIsTHJSTHQVVHdg1BhCs2rrCUT6Sk2GJaW9ZWbQeXpfE0GDUxS/PI60rG5s44J7VAxD5wYZsO8QpUQC4rIx3zskLoZuKsgSv/e6dZu5QaibcjZIJ7lhtbUY+gV3yGgr93z53m/OucZnPog3olG5b2u3aB+SKwC9BUyKYxpw6G4znVLvYOXSFQUdWBAYRlY5kor3d8muEBzVoRss0n8flfr4rRCT/BFtOuxQF27rjhmypt097UbXDn6ghVSqCa88oC2hR2xjWDWd3VVHz3APDwwpiDC0kq98b+EIAfQ6CUoSwOwAWVHtMNMeBKlguAFVCF4FoQopz2A9WAdPK0iSWXqJD4X9DV5RlzyBmoDbu5oraa0VB2shMlY15Q9M8c5in2N8DFw5K0bVZiNcbkaH1XCzDEtaw3Q/M9xWiSP/1+rPtskq+gsrCwfihJZeCDmMnfO0KBruKI/dyx7kbECyoIMIurj/umI5I0K6iPn7t8Uk0PO9mUz5F0u1dSgeEfNS/m9cTGDgXgQ/3D+YlPUN1FNoE+tIxzr4XYpHbYlNikVd0TrYmT8MHo+psNXnjdJ/fz4iIWPkdT2ji50uJrO0=----ATTACHMENT:----MzEwNTU4OTE0ODE4ODg0IDIzMDcxMDU4MTQ3NDQ0NDkgNDA2MzQxOTExODk3NTIx