PHP Conference Kansai 2025

imap_getacl

(PHP 5, PHP 7, PHP 8)

imap_getaclDevuelve el ACL para el buzón

Descripción

imap_getacl(IMAP\Connection $imap, string $mailbox): array|false

Recupera el ACL para el buzón dado.

Parámetros

imap

An IMAP\Connection instance.

mailbox

El nombre del buzón, ver la documentación de la función imap_open() para más detalles.

Advertencia

El paso de datos no confiables a este parámetro es inseguro, a menos que imap.enable_insecure_rsh esté inhabilitado.

Valores devueltos

Devuelve un array asociativo en la forma "folder" => "acl", o false en caso de error.

Historial de cambios

Versión Descripción
8.1.0 The imap parameter expects an IMAP\Connection instance now; previously, a valid imap recurso was expected.

Ejemplos

Ejemplo #1 Ejemplo con imap_getacl()

<?php

print_r
(imap_getacl($imap, 'user.joecool'));

?>

El resultado del ejemplo sería algo similar a:

Array
(
    [asubfolder] => lrswipcda
    [anothersubfolder] => lrswipcda
)

Notas

Esta función está actualmente disponible solo para los usuarios de la biblioteca c-client2000 o superior.

Ver también

add a note

User Contributed Notes 1 note

up
0
hartmut dot woehrle at hwds dot ch
9 years ago
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.
To Top