ldap_exop_refresh
(PHP 7 >= 7.3.0, PHP 8)
ldap_exop_refresh — Refresh extended operation helper
说明
Performs a Refresh extended operation and returns the data.
参数
-
ldap
-
通过 ldap_connect() 返回的 LDAP\Connection 实例。
-
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.
更新日志
版本 | 说明 |
---|---|
8.1.0 |
现在 ldap 参数接受 LDAP\Connection
实例,之前接受 资源(resource)。
|

User Contributed Notes 1 note
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);
备份地址:http://www.lvesu.com/blog/php/function.ldap-exop-refresh.php