<?php
$ldapURL = 'ldap.forumsys.com';
$ldapPort = 389; // Port par défaut = 389
$ldapVersionProtocole = 3; // Version par défaut = 2
$ldapIdentifiant = 'cn=read-only-admin,dc=example,dc=com';
$ldapMotDePasse = 'password';

// Connexion
$ldap = ldap_connect($ldapURL, $ldapPort);
if (false === $ldap) die('Echec de la connexion');
ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, $ldapVersionProtocole);
$retour = ldap_bind($ldap, $ldapIdentifiant, $ldapMotDePasse);
if (false === $retour) die('Echec de l\'authentification (ou de la connexion)');

// Recherche
$requete = ldap_search($ldap,
                     'dc=example,dc=com',
                     '(uid=curie)',
                     ['uid', 'sn', 'givenname']);
if (false === $requete) die('La recherche a échoué');

// Parcours du résultat de la recherche
$resultats = ldap_get_entries($ldap, $requete);
for ($i = 0; $i < $resultats['count']; $i++) {
    echo 'Réponse '.$i.' ('.$resultats[$i]['dn'].')'."\n";
    for ($j = 0; $j < $resultats[$i]['count']; $j++) {
        $nomAttribut = $resultats[$i][$j];
        echo '  L\'attribut '.$j.' ('.$nomAttribut.') a pour valeur(s):'."\n";
        for ($k = 0; $k < $resultats[$i][$nomAttribut]['count']; $k++) {
            echo '    '.$resultats[$i][$nomAttribut][$k]."\n";
        }
    }
}
?>
