(PHP 5, PHP 7, PHP 8)
imap_getacl — Получает ACL для заданного почтового ящика
Возвращает ACL для заданного почтового ящика.
imapmailboxИмя почтового ящика. Более подробно читайте в разделе, посвящённом функции imap_open()
Передача в этот параметр непроверенных данных небезопасна, если включили директиву imap.enable_insecure_rsh.
Возвращает ассоциативный массив вида "folder" => "acl" или false , если возникла ошибка.
| Версия | Описание |
|---|---|
| 8.1.0 |
Параметр imap теперь принимает объект IMAP\Connection ;
раньше параметр ждал ресурс (resource ) imap.
|
Пример #1 Пример использования imap_getacl()
<?php
print_r(imap_getacl($imap, 'user.joecool'));
?>Вывод приведённого примера будет похож на:
Array ( [asubfolder] => lrswipcda [anothersubfolder] => lrswipcda )
Эта функция доступна только при использовании библиотеки c-client2000 или новее.
Maybe the functionality changed over the years but the examples are wrong.
It does NOT return [subfolder] => ACL
At the moment (PHP5) the usage and answer of imap_getacl is the following:
You ask for the folder and get the ACLs for exactly this folder (no Wildcards)
Example:
When you have the folder Business in your mailbox
print_r(imap_getacl($connection , "user/john.doe/Business"));
returns the following:
Array
(
[john.doe@example.com] => lrswipkxtecda
[cyrus@example.com] => lrswipkxtecd
[secretary@example.com] => lrsp
[department@example.com] => lrs
)
Which means you have to loop over your directories (imap_list) and list the ACL for ever folder seperately.