ldap_get_values

(PHP 4, PHP 5, PHP 7, PHP 8)

ldap_get_valuesLit toutes les valeurs d'une entrée LDAP

Description

ldap_get_values(LDAP\Connection $ldap, LDAP\ResultEntry $entry, string $attribute): array|false

Lit toutes les valeurs de l'attribut d'une entrée dans un résultat.

L'appel de cette fonction requiert une entry et doit donc être précédée d'une recherche LDAP, et de l'une des fonctions permettant d'accéder à une entrée.

Votre application doit contenir des informations permettant de lire certains attributs (comme "nom" ou "mail"), ou bien vous devrez utiliser la fonction ldap_get_attributes() pour savoir quels sont les attributs qui existent pour une entrée donnée.

Liste de paramètres

ldap

Une instance LDAP\Connection, retourné par ldap_connect().

entry

Une instance LDAP\ResultEntry.

attribute

Valeurs de retour

Retourne un tableau de valeurs pour l'attribut, ou false en cas d'erreur. Le nombre de valeurs retournées est disponible à l'index 'count' du tableau retourné. Les valeurs sont accessibles individuellement, avec les index numériques du tableau. L'indexation commence à 0.

LDAP permet plus d'une entrée par attribut, ce qui permet de stocker plusieurs adresses emails par personne, tout en n'utilisant qu'une étiquette "mail" :

    return_value["count"] = nombre de valeurs de l'attribut
    return_value[0] = première valeur de l'attribut
    return_value[i] = i-ième valeur de l'attribut
    

Historique

Version Description
8.1.0 Le paramètre ldap attend désormais une instance de LDAP\Connection ; auparavant, une ressource était attendu.
8.1.0 Le paramètre entry attend désormais une instance de LDAP\ResultEntry ; auparavant, une ressource était attendu.

Exemples

Exemple #1 Liste toutes les valeurs de l'attribut "mail" d'une entrée

<?php
// $ds doit être une ressource de connexion valide

// $sr doit être une ressource de résultat valide, obtenue avec une des fonctions de
//     recherche LDAP.

// $entry est une entrée LDAP valide, obtenue avec une des fonctions
//        LDAP qui retourne une entrée

$values ldap_get_values($ds$entry,"mail");

echo 
$values["count"] . " adresses email pour cette entrée.<br />";

for (
$i=0$i $values["count"]; $i++) {
    echo 
$values[$i] . "<br />";
}
?>

Voir aussi