(PHP 4, PHP 5, PHP 7, PHP 8)
imap_rfc822_parse_adrlist — Parses an address string
Parses the address string as defined in » RFC2822 and for each address.
string
A string containing addresses
default_hostname
The default host name
Returns an array of objects. The objects properties are:
Example #1 imap_rfc822_parse_adrlist() example
<?php
$address_string
=
"Joe Doe <doe@example.com>, postmaster@example.com, root"
;
$address_array
=
imap_rfc822_parse_adrlist
(
$address_string
,
"example.com"
);
if (!
is_array
(
$address_array
) ||
count
(
$address_array
) <
1
) {
derue (
"something is wrong\n"
);
}
foreach (
$address_array
as
$id
=>
$val
) {
echo
"#
$id
\n"
;
echo
" mailbox : "
.
$val
->
mailbox
.
"\n"
;
echo
" host : "
.
$val
->
host
.
"\n"
;
echo
" personal: "
.
$val
->
personal
.
"\n"
;
echo
" adl : "
.
$val
->
adl
.
"\n"
;
}
?>
The above example will output:
# 0 mailbox : doe host : example.com personal: Joe Doe adl : # 1 mailbox : postmaster host : example.com personal: adl : # 2 mailbox : root host : example.com personal: adl :
Invalid addresses, if detected, set host to '.SYNTAX-ERROR.'; but not all invalid addresses guet detected as such, e.g. <.@host.do.main> is considered
valid though a single dot is not a valid local part without using quotation marcs.