ILIAS  release_8 Revision v8.24
class.ilMailImapRfc822AddressParser.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
26{
27 protected function parseAddressString(string $addresses): array
28 {
29 $parsedAddresses = imap_rfc822_parse_adrlist($addresses, $this->installationHost);
30
31 // #18992
32 $validParsedAddresses = array_filter($parsedAddresses, static function (stdClass $address): bool {
33 return '.SYNTAX-ERROR.' !== $address->host;
34 });
35
36 if ($parsedAddresses !== $validParsedAddresses) {
37 throw new ilMailException($addresses);
38 }
39
40 return array_map(static function (stdClass $address): ilMailAddress {
41 return new ilMailAddress($address->mailbox, $address->host);
42 }, $validParsedAddresses);
43 }
44}
Class ilBaseMailRfc822AddressParser.
Class ilMailAddress.
Class ilMailException.
Class ilMailImapRfc822AddressParser.