imap_open
メールボックスへの IMAP ストリームをオープンする
&reftitle.description;
IMAP\Connectionfalseimap_open
stringmailbox
stringuser
stringpassword
intflags0
intretries0
arrayoptions[]
mailbox への IMAP ストリームをオープンします。
この関数は、POP3 や NNTP
サーバーへのストリームをオープンする際にも使用可能です。
しかし、いくつかの関数および機能は IMAP サーバーでしか利用できません。
&reftitle.parameters;
mailbox
メールボックス名(mailbox)は、サーバー名の部分と使用するサーバーにおける
メールボックスへのパスから構成されます。特別な名前 INBOX は、
カレントユーザーの個人メールボックスを意味します。
ASCII 空間で出力可能な文字以外の外国文字を含むメールボックス名は
imap_utf7_encode でエンコードする必要があります。
&imap.mailboxname.insecure;
サーバー部は '{'
および '}' で括られ、サーバー名または IP アドレス、オプションの ':'
から始まるポート指定子、('/' で始まる)オプションのプロトコル指定子
から構成されます。
サーバー部は、全ての mailbox パラメータで必須です。
{ で始まる名前はすべてリモート名で、
"{" remote_system_name [":" port] [flags] "}"
[mailbox_name] のような形式となります。
remote_system_name - Internet ドメイン名
あるいは括弧でかこまれたサーバーの IP アドレス。
port - オプションの TCP ポート番号。デフォルトは
そのサービスのデフォルトポート。
flags - オプションのフラグ。以下の表を参照ください。
mailbox_name - リモートメールボックス名。デフォルトは INBOX 。
オプションのフラグ名
フラグ
説明
/service=service
メールボックスにアクセスするサービス。デフォルトは "imap" 。
/user=user
サーバーへのログイン時のユーザー名。
/authuser=user
リモートの認証ユーザー。指定されていた場合は、このユーザーのパスワードが
認証に使用されます(例: administrator)。
/anonymous
匿名ユーザーとしてアクセスします。
/debug
プロトコルの通信内容をアプリケーションのデバッグログに記録します。
/secure
ネットワーク越しにプレーンテキストのパスワードを送信しません。
/imap, /imap2,
/imap2bis, /imap4,
/imap4rev1
/service=imap と同じです。
/pop3
/service=pop3 と同じです。
/nntp
/service=nntp と同じです。
/norsh
事前に認証済みの IMAP セッションを確立する際に、rsh や ssh
を使用しません。
/ssl
セッションの暗号化に Secure Socket Layer を使用します。
/validate-cert
TLS/SSL サーバーの証明書を検証します(デフォルトの挙動です)。
/novalidate-cert
TLS/SSL サーバーの証明書を検証しません。サーバーが自己証明の
証明書を使用している際に必要となります。
/tls
セッションの暗号化に start-TLS の使用を強制し、それを
サポートしていないサーバーとの接続を拒否します。
/notls
たとえサーバーがそれをサポートしていたとしても、
セッションで start-TLS による暗号化を使用しません。
/readonly
読み込み専用でのメールボックスのオープンを要求します(IMAP のみ。
NNTP では無視され、SMTP および POP3 ではエラーとなります)。
user
ユーザー名。
password
user のパスワード。
flags
flags はビットマスクであり、以下の組み合わせとなります。
OP_READONLY - メールボックスを読み込み専用でオープンします。
OP_ANONYMOUS - news に関して
.newsrc を使用せず、更新もしません(NNTP のみ)。
OP_HALFOPEN - IMAP 及び NNTP 名について、
接続をオープンしますがメールボックスはオープンしません。
CL_EXPUNGE - メールボックスを閉じる際に、
自動的にメールボックスを削除します(imap_delete
および imap_expunge も参照ください)。
OP_DEBUG - プロトコルネゴシエーションをデバッグします。
OP_SHORTCACHE - 短い(elt-only)キャッシングを行います。
OP_SILENT - イベントを受信しません(内部で使用します)。
OP_PROTOTYPE - ドライバのプロトタイプを返します。
OP_SECURE - セキュアでない認証を行いません。
retries
接続試行の最大数。
options
接続パラメータ。次の (文字列の) キーを使って接続パラメータを設定することができます。
DISABLE_AUTHENTICATOR - 認証プロパティを無効にする
&reftitle.returnvalues;
成功した場合は、
IMAP\Connection クラスのインスタンスを返します。
&return.falseforfailure;.
&reftitle.changelog;
&Version;
&Description;
8.1.0
IMAP\Connection
のインスタンスを返すようになりました。
これより前のバージョンでは、
&resource; を返していました。
&reftitle.examples;
imap_open のさまざまな使用例
]]>
imap_open の例
Mailboxes\n";
$folders = imap_listmailbox($mbox, "{imap.example.org:143}", "*");
if ($folders == false) {
echo "コールが失敗しました
\n";
} else {
foreach ($folders as $val) {
echo $val . "
\n";
}
}
echo "INBOX のヘッダ
\n";
$headers = imap_headers($mbox);
if ($headers == false) {
echo "コールが失敗しました
\n";
} else {
foreach ($headers as $val) {
echo $val . "
\n";
}
}
imap_close($mbox);
?>
]]>
&reftitle.seealso;
imap_close