略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: imap_setacl

2024-11-13

imap_setacl

(PHP 4 >= 4.0.7, PHP 5, PHP 7, PHP 8)

imap_setaclSets the ACL for a given mailbox

说明

imap_setacl(
    IMAP\Connection $imap,
    string $mailbox,
    string $user_id,
    string $rights
): bool

Sets the ACL for a giving mailbox.

参数

imap

IMAP\Connection 实例。

mailbox

The mailbox name, see imap_open() for more information

警告

Passing untrusted data to this parameter is insecure, unless imap.enable_insecure_rsh is disabled.

user_id

The user to give the rights to.

rights

The rights to give to the user. Passing an empty string will delete acl.

返回值

成功时返回 true, 或者在失败时返回 false

更新日志

版本 说明
8.1.0 现在 imap 参数接受 IMAP\Connection 实例,之前接受 资源(resource)

注释

This function is currently only available to users of the c-client2000 or greater library.

参见

add a noteadd a note

User Contributed Notes 2 notes

up
0
panayotis at yellownetroad dot com
19 years ago
I noticed that using:
imap_setacl ($conn, $mbox, $userid, "")
will act like:
"deleteaclmailbox $mbox $userid"  (remove the ACL on mailbox for userid).
up
-1
hartmut dot woehrle at hwds dot ch
6 years ago
After getting the ACL's from imap_getacl you want to set them for a user on any mailbox folder like this:

foreach ( $Folders as $key => $Maildir ) {
imap_setacl($domains , "user/john.doe/".$Maildir , $userid, "lrswipkxte");
}

You can use a form that translates the ACLs like the following (thanks to cyradm manual):

  switch ($right) {
      case "read" :  $aclstring = "lrs";
          break;
      case "post" : $aclstring = "lrsp";
          break;
      case "append" : $aclstring = "lrsip";
          break;
      case "write" : $aclstring = "lrswipkxte";
          break;
      case "delete" : $aclstring = "lrxte";
          break;
      case "all" : $aclstring = "lrswipkxte";
          break;
      case "admin" : $aclstring = "lrswipkxtea";
          break;
      case "none" : $aclstring = "";
          break;
  }

官方地址:https://www.php.net/manual/en/function.imap-setacl.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3