Net_LDAP (Constructor) [line 187]
void Net_LDAP(
[array
$config = array()])
|
|
Net_LDAP constructor
Sets the config array
Please note that the usual way of getting Net_LDAP to work is to call something like:
Parameters:
add [line 527]
Add a new entryobject to a directory.
Use add to add a new Net_LDAP_Entry object to the directory. This also links the entry to the connection used for the add, if it was a fresh entry (Net_LDAP_Entry::createFresh())
Parameters:
bind [line 271]
Net_LDAP_Error|true bind(
[string
$dn = null], [string
$password = null])
|
|
Bind or rebind to the ldap-server
This function binds with the given dn and password to the server. In case no connection has been made yet, it will be startet and startTLS issued if appropiate.
The internal bind configuration is not being updated, so if you call bind() without parameters, you can rebind with the credentials provided at first connecting to the server.
Parameters:
checkLDAPExtension [line 1263]
Checks if phps ldap-extension is loaded
If it is not loaded, it tries to load it manually using PHPs dl(). It knows both windows-dll and *nix-so.
connect [line 152]
Creates the initial ldap-object
Static function that returns either an error object or the new Net_LDAP object. Something like a factory. Takes a config array with the needed parameters.
Parameters:
copy [line 1025]
Copy an entry to a new location
The entry will be immediately copied. Please note that only attributes you have selected will be copied.
Parameters:
delete [line 561]
Delete an entry from the directory
The object may either be a string representing the dn or a Net_LDAP_Entry object. When the boolean paramter recursive is set, all subentries of the entry will be deleted as well.
Parameters:
dnExists [line 887]
Tell if a DN does exist in the directory
Parameters:
done [line 501]
Close LDAP connection.
Closes the connection. Use this when the session is over.
errorMessage [line 1054]
string errorMessage(
int
$errorcode)
|
|
Returns the string for an ldap errorcode.
Made to be able to make better errorhandling Function based on DB::errorMessage() Tip: The best description of the errorcodes is found here: http://www.directory-info.com/LDAP/LDAPErrorCodes.html
Parameters:
getEntry [line 929]
Get a specific entry based on the DN
Parameters:
getLDAPVersion [line 854]
Get the LDAP_PROTOCOL_VERSION that is used on the connection.
A lot of ldap functionality is defined by what protocol version the ldap server speaks. This might be 2 or 3.
getLink [line 1387]
getOption [line 822]
Get an LDAP option value
Parameters:
getVersion [line 135]
Returns the Net_LDAP Release version, may be called statically
isError [line 1134]
boolean isError(
mixed
$var)
|
|
Tell whether variable is a Net_LDAP_Error or not
Parameters:
modify [line 629]
Modify an ldapentry directly on the server
This one takes the DN or a Net_LDAP_Entry object and an array of actions. This array should be something like this:
array('add' => array('attribute1' => array('val1', 'val2'), 'attribute2' => array('val1')), 'delete' => array('attribute1'), 'replace' => array('attribute1' => array('val1')), 'changes' => array('add' => ..., 'replace' => ..., 'delete' => array('attribute1', 'attribute2' => array('val1')))
The changes array is there so the order of operations can be influenced (the operations are done in order of appearance). The order of execution is as following:
- adds from 'add' array
- deletes from 'delete' array
- replaces from 'replace' array
- changes (add, replace, delete) in order of appearance
All subarrays (add, replace, delete, changes) may be given at the same time.
The function calls the corresponding functions of an Net_LDAP_Entry object. A detailed description of array structures can be found there.
Unlike the modification methods provided by the Net_LDAP_Entry object, this method will instantly carry out an update() after each operation, thus modifying "directly" on the server.
Parameters:
move [line 968]
Rename or move an entry
This method will instantly carry out an update() after the move, so the entry is moved instantly. You can pass an optional Net_LDAP object. In this case, a cross directory move will be performed which deletes the entry in the source (THIS) directory and adds it in the directory $target_ldap. A cross directory move will switch the Entrys internal LDAP reference so updates to the entry will go to the new directory.
Note that if you want to do a cross directory move, you need to pass an Net_LDAP_Entry object, otherwise the attributes will be empty.
Parameters:
rootDse [line 1148]
Gets a rootDSE object
Parameters:
root_dse [line 1180]
Alias function of rootDse() for perl-ldap interface
schema [line 1195]
Get a schema object
Parameters:
search [line 704]
Run a ldap query
Search is used to query the ldap-database. $base and $filter may be ommitted.The one from config will then be used. Params may contain:
scope: The scope which will be used for searching base - Just one entry sub - The whole tree one - Immediately below $base sizelimit: Limit the number of entries returned (default: 0 = unlimited), timelimit: Limit the time spent for searching (default: 0 = unlimited), attrsonly: If true, the search will only return the attribute names, attributes: Array of attribute names, which the entry should contain. It is good practice to limit this to just the ones you need. [NOT IMPLEMENTED] deref: By default aliases are dereferenced to locate the base object for the search, but not when searching subordinates of the base object. This may be changed by specifying one of the following values:
never - Do not dereference aliases in searching or in locating the base object of the search. search - Dereference aliases in subordinates of the base object in searching, but not in locating the base object of the search. find always
Please note, that you cannot override server side limitations to sizelimit and timelimit: You can always only lower a given limit.
Parameters:
setLDAPVersion [line 871]
Set the LDAP_PROTOCOL_VERSION that is used on the connection.
Parameters:
setOption [line 790]
Set an LDAP option
Parameters:
startTLS [line 472]
Starts an encrypted session
start_tls [line 488]
alias function of startTLS() for perl-ldap interface
utf8Decode [line 1312]
Decodes the given attribute values if needed by schema
$attributes is expected to be an array with keys describing the attribute names and the values as the value of this attribute: $attributes = array('cn' => 'foo', 'attr2' => array('mv1', 'mv2'));
Parameters:
utf8Encode [line 1292]
Encodes given attributes to UTF8 if needed by schema
This function takes attributes in an array and then checks against the schema if they need UTF8 encoding. If that is so, they will be encoded. An encoded array will be returned and can be used for adding or modifying.
$attributes is expected to be an array with keys describing the attribute names and the values as the value of this attribute: $attributes = array('cn' => 'foo', 'attr2' => array('mv1', 'mv2'));
Parameters: