PHPKonf Istanbul PHP Conference 2019 - Call for Papers

ldap_get_option

(PHP 4 >= 4.0.4, PHP 5, PHP 7)

ldap_get_optionLit/écrit la valeur courante d'une option

Description

bool ldap_get_option ( resource $link_identifier , int $option , mixed &$retval )

Définit la valeur retval à l'option spécifié.

Liste de paramètres

link_identifier

Un identifiant de lien LDAP, retourné par la fonction ldap_connect().

option

Le paramètre option peut prendre l'une des valeurs suivantes :

Option Type Disponible depuis
LDAP_OPT_DEREF entier  
LDAP_OPT_SIZELIMIT entier  
LDAP_OPT_TIMELIMIT entier  
LDAP_OPT_NETWORK_TIMEOUT entier  
LDAP_OPT_PROTOCOL_VERSION entier  
LDAP_OPT_ERROR_NUMBER entier  
LDAP_OPT_DIAGNOSTIC_MESSAGE entier  
LDAP_OPT_REFERRALS booléen  
LDAP_OPT_RESTART booléen  
LDAP_OPT_HOST_NAME chaîne de caractères  
LDAP_OPT_ERROR_STRING chaîne de caractères  
LDAP_OPT_MATCHED_DN chaîne de caractères  
LDAP_OPT_SERVER_CONTROLS tableau  
LDAP_OPT_CLIENT_CONTROLS tableau  
LDAP_OPT_X_KEEPALIVE_IDLE entier 7.1
LDAP_OPT_X_KEEPALIVE_PROBES entier 7.1
LDAP_OPT_X_KEEPALIVE_INTERVAL entier 7.1
LDAP_OPT_X_TLS_CACERTDIR string 7.1
LDAP_OPT_X_TLS_CACERTFILE chaîne de caractères 7.1
LDAP_OPT_X_TLS_CERTFILE chaîne de caractères 7.1
LDAP_OPT_X_TLS_CIPHER_SUITE chaîne de caractères 7.1
LDAP_OPT_X_TLS_CRLCHECK entier 7.1
LDAP_OPT_X_TLS_CRL_NONE entier 7.1
LDAP_OPT_X_TLS_CRL_PEER entier 7.1
LDAP_OPT_X_TLS_CRL_ALL entier 7.1
LDAP_OPT_X_TLS_CRLFILE chaîne de caractères 7.1
LDAP_OPT_X_TLS_DHFILE chaîne de caractères 7.1
LDAP_OPT_X_TLS_KEYILE chaîne de caractères 7.1
LDAP_OPT_X_TLS_PACKAGE chaîne de caractères 7.1
LDAP_OPT_X_TLS_PROTOCOL_MIN entier 7.1
LDAP_OPT_X_TLS_RANDOM_FILE chaîne de caractères 7.1
LDAP_OPT_X_TLS_REQUIRE_CERT entier  

retval

Valeur à définir pour l'option.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Exemples

Exemple #1 Vérification de la version du protocole

<?php
// $ds doit être une ressource de connexion valide
if (ldap_get_option($dsLDAP_OPT_PROTOCOL_VERSION$version)) {
    echo 
"Nous utilisons le protocole version $version\n";
} else {
    echo 
"Impossible de déterminer la version du protocole.\n";
}
?>

Notes

Note:

Cette fonction n'est disponible qu'avec OpenLDAP 2.x.x OU Netscape Directory SDK x.x, et a été ajoutée en PHP 4.0.4.

Voir aussi

add a note add a note

User Contributed Notes 2 notes

up
7
Anonymous
2 years ago
Following on from Jeremy S's example.
Instead of defining LDAP_OPT_DIAGNOSTIC_MESSAGE as 0x32 then using it, you can just use the option already defined as that value :)

LDAP_OPT_ERROR_STRING
up
6
Jeremy S
5 years ago
Here is how to tell if an Active Directory user account expired:

define('LDAP_OPT_DIAGNOSTIC_MESSAGE', 0x0032);

ldap_set_option($conn, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($conn, LDAP_OPT_REFERRALS, 0);

$bind = ldap_bind($conn, $user, $pass);

ldap_get_option($conn, LDAP_OPT_DIAGNOSTIC_MESSAGE, $extended_error);

if (!empty($extended_error))
{
    $errno = explode(',', $extended_error)[2];
    $errno = explode(' ', $errno)[2];
    $errno = intval($errno);

    if ($errno == 532)
        $err = 'Unable to login: Password expired.';
}
To Top