使用
echo mb_convert_encoding($val, "utf-8", "UTF7-IMAP");
用于西里尔字母文件夹名称
(PHP 4, PHP 5, PHP 7, PHP 8)
imap_list — 读取邮箱列表
imap
一个 IMAP\Connection 实例。
reference
reference
通常应该只是服务器规范,如 imap_open() 中所述。
除非禁用了 imap.enable_insecure_rsh,否则将不可信数据传递给此参数是不安全的。
pattern
指定在邮箱层次结构中的哪个位置开始搜索。
您可以作为 pattern
的一部分传递两个特殊字符:'*
' 和 '%
'。'*
' 表示返回所有邮箱。如果您将 pattern
作为 '*
' 传递,您将获得整个邮箱层次结构的列表。'%
' 表示仅返回当前级别。'%
' 作为 pattern
参数将仅返回顶级邮箱;在 UW_IMAPD
上的 '~/mail/%
' 将返回 ~/mail 目录中的每个邮箱,但不会返回该目录子文件夹中的任何邮箱。
返回一个包含邮箱名称的数组,或者在失败的情况下返回 false
。
版本 | 描述 |
---|---|
8.1.0 | 现在,imap 参数需要一个 IMAP\Connection 实例;以前,需要一个有效的 imap 资源。 |
示例 #1 imap_list() 示例
<?php
$mbox = imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
or die("无法连接: " . 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 失败: " . imap_last_error() . "\n";
}
imap_close($mbox);
?>
imap_list 返回一个简单的字符串数组,看起来就像需要指定的 $ref 参数一样
<?php
$srv = '{imap.example.com}';
$conn = imap_open($srv, 'me', 'mypass');
$boxes = imap_list($conn, $srv, '*');
print_r($boxes);
imap_close($conn);
?>
输出
<pre>
数组
(
[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>
这些直接填充每个需要一个参数的函数的 $ref 参数。