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 521]
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 270]
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 1253]
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 1015]
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 555]
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 877]
Tell if a DN does exist in the directory
Parameters:
done [line 495]
Close LDAP connection.
Closes the connection. Use this when the session is over.
errorMessage [line 1044]
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 919]
Get a specific entry based on the DN
Parameters:
getLDAPVersion [line 844]
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 1367]
getOption [line 812]
Get an LDAP option value
Parameters:
getVersion [line 135]
Returns the Net_LDAP Release version, may be called statically
isError [line 1124]
boolean isError(
mixed
$var)
|
|
Tell whether variable is a Net_LDAP_Error or not
Parameters:
modify [line 623]
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 958]
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 1138]
Gets a rootDSE object
Parameters:
root_dse [line 1170]
Alias function of rootDse() for perl-ldap interface
schema [line 1185]
Get a schema object
Parameters:
search [line 698]
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 861]
Set the LDAP_PROTOCOL_VERSION that is used on the connection.
Parameters:
setOption [line 780]
Set an LDAP option
Parameters:
startTLS [line 466]
Starts an encrypted session
start_tls [line 482]
alias function of startTLS() for perl-ldap interface
utf8Decode [line 1296]
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 1278]
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: