ldap_exop_refresh()
(PHP 7 >= 7.3.0)
Refresh extended operation helper
说明
ldap_exop_refresh(resource $link,string $dn,int $ttl): int
Performs a Refresh extended operation and returns the data.
参数
- $link
An LDAP link identifier, returned by ldap_connect().
- $dn
dn of the entry to refresh.
- $ttl
Time in seconds(between 1 and 31557600)that the client requests that the entry exists in the directory before being automatically removed.
返回值
From RFC: The responseTtl field is the time in seconds which the server chooses to have as the time-to-live field for that entry. It must not be any smaller than that which the client requested, and it may be larger. However, to allow servers to maintain a relatively accurate directory, and to prevent clients from abusing the dynamic extensions, servers are permitted to shorten a client-requested time-to-live value, down to a minimum of 86400 seconds(one day).FALSE
will be returned on error.
参见
ldap_exop()
Performs an extended operation
The following workaround can be used to run the refresh command in PHP 7.2. $dn= 'cn=user,dc=test,dc=org'; $ttl = 3600; $data = ''; $data .= '80' . sprintf("%'.02x", strlen($dn)) . bin2hex($dn); $data .= '81' . sprintf("%'.02x", 4) . sprintf("%'.08x", $ttl); $data = hex2bin('30' . sprintf("%'.02x", strlen($data)/2) . $data); $success = ldap_exop($ldapHandle, LDAP_EXOP_REFRESH, $data);