imap_list returns a simple array of strings that look just like the $ref parameter one needs to specify:
<?php
$srv = '{imap.example.com}';
$conn = imap_open($srv, 'me', 'mypass');
$boxes = imap_list($conn, $srv, '*');
print_r($boxes);
imap_close($conn);
?>
Output:
<pre>
Array
(
[0] => {imap.example.com}Calendar
[1] => {imap.example.com}Contacts
[2] => {imap.example.com}Deleted Items
[3] => {imap.example.com}Drafts
[4] => {imap.example.com}Journal
[5] => {imap.example.com}Junk E-mail
[6] => {imap.example.com}Notes
[7] => {imap.example.com}Outbox
[8] => {imap.example.com}RSS Feeds
[9] => {imap.example.com}Sent Items
[10] => {imap.example.com}Tasks
)
</pre>
These directly fill in the $ref argument for every function that takes one.
imap_list
(PHP 4, PHP 5)
imap_list — Read the list of mailboxes
설명
array imap_list
( resource $imap_stream
, string $ref
, string $pattern
)
Read the list of mailboxes.
인수
- imap_stream
-
imap_open()이 반환한 IMAP 스트림입니다.
- ref
-
ref should normally be just the server specification as described in imap_open().
- pattern
-
검색을 시작할 우편함 계층을 지정합니다.
pattern 부분에 사용할 수 있는 두 개의 특수 문자가 존재합니다: '*'와 '%'. '*'는 모든 우편함을 반환합니다. pattern이 '*'라면, 전체 우편함 계층 목록을 얻습니다. '%'은 현재 레벨을 의미합니다. pattern 인수로 '%'을 사용하면, 최고 레벨 우편함들만 반환합니다; UW_IMAPD에 '~/mail/%'는 ~/mail 디렉토리 안에 있는 모든 우편함을 반환하지만, 서브 디렉토리 안에 있는 우편함은 반환하지 않습니다.
반환값
Returns an array containing the names of the mailboxes.
예제
Example #1 imap_list() example
<?php
$mbox = imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
or die("can't connect: " . imap_last_error());
$list = imap_list($mbox, "{imap.example.org}", "*");
if (is_array($list)) {
foreach ($list as $val) {
echo imap_utf7_decode($val) . "\n";
}
} else {
echo "imap_list failed: " . imap_last_error() . "\n";
}
imap_close($mbox);
?>
참고
- imap_getmailboxes() - Read the list of mailboxes, returning detailed information on each one
- imap_lsub() - List all the subscribed mailboxes
c6h1206free at gmail dot com ¶
4 years ago
kevin at metalaxe dot com ¶
5 years ago
if there is an error imap_list returns FALSE not an empty array (as expected by docs)
