imap_get_quota

(PHP 4 >= 4.0.5, PHP 5)

imap_get_quota --  クオータレベルの設定、メールボックス毎の使用状況を取得する

説明

array imap_get_quota ( resource imap_stream, string quota_root )

指定したメールボックスの limit と usage をキーとした整数値を配列として 返します。limit の値は、このメールボックスで最大使用可能な大きさを 表します。usage の値は、このメールボックスの現在の使用状況を示します。 失敗した場合に FALSE を返します。

この関数は、現在、c-client2000 を使用しているユーザのみ使用可能です。

注意: この関数を使用するには、メールストリームをメール管理者として オープンする必要があります。この関数の非管理者向けバージョンは、 PHP の imap_get_quotaroot() 関数を参照ください。

imap_streamimap_open() のコールにより返された値とする必要があります。注意: get_quota 関数を 使用するには、このストリームをメール管理者ユーザとしてオープンする 必要があります。quota_root は、通常 user.name という形式にする必要があります。name は、情報を取得したい メールボックスの名前です。 about.

例 1. imap_get_quota() の例

<?php
$mbox
= imap_open("{imap.example.org}", "mailadmin", "password", OP_HALFOPEN)
      or die(
"接続できません: " . imap_last_error());

$quota_value = imap_get_quota($mbox, "user.kalowsky");
if (
is_array($quota_value)) {
    echo
"Usage level is: " . $quota_value['usage'];
    echo
"Limit level is: " . $quota_value['limit'];
}

imap_close($mbox);
?>

PHP 4.3 では、この関数は RFC2087 で述べられている機能をより適切に反映するようになっています。 返り値の配列からは、サポートするリソース (例:メッセージ、あるいはサブフォルダ)数の制限をなくし、 名前つきリソースを独立した配列のキーとして受信するようにしました。 各キーの値は配列となっており、その中に usage と values の値が格納されています。下の例で、この新しい返り値の形式を示します。

過去との互換性を保つため、旧来のアクセス方法も使用可能です。しかし 新しい方法に変更することを推奨します。

例 2. 4.3 以降のバージョンでの imap_get_quota() の例

<?php
$mbox
= imap_open("{imap.example.org}", "mailadmin", "password", OP_HALFOPEN)
      or die(
"接続できません: " . imap_last_error());
       
$quota_values = imap_get_quota($mbox, "user.kalowsky");
if (
is_array($quota_values)) {
   
$storage = $quota_values['STORAGE'];
   echo
"STORAGE usage level is: " .  $storage['usage'];
   echo
"STORAGE limit level is: " .  $storage['limit'];

   
$message = $quota_values['MESSAGE'];
   echo
"MESSAGE usage level is: " .  $message['usage'];
   echo
"MESSAGE limit is: " .  $message['limit'];

   
/* ...  */
}

imap_close($mbox);
?>

imap_open()imap_set_quota() および imap_get_quotaroot() も参照ください。