ldap_exop_refresh

(PHP 7 >= 7.3.0, PHP 8)

ldap_exop_refresh刷新扩展操作助手

描述

ldap_exop_refresh(LDAP\Connection $ldap, string $dn, int $ttl): int|false

执行刷新扩展操作并返回数据。

参数

ldap

一个 LDAP\Connection 实例,由 ldap_connect() 返回。

dn

要刷新的条目的 dn。

ttl

客户端请求条目在目录中存在的时间(以秒为单位,介于 1 到 31557600 之间),然后自动删除。

返回值

来自 RFC:responseTtl 字段是服务器选择作为该条目生存时间字段的时间(以秒为单位)。它不能小于客户端请求的时间,并且可能更大。但是,为了允许服务器维护相对准确的目录,并防止客户端滥用动态扩展,服务器被允许将客户端请求的生存时间值缩短,最短为 86400 秒(一天)。错误时将返回 false

变更日志

版本 描述
8.1.0 ldap 参数现在期望一个 LDAP\Connection 实例;之前,期望一个有效的 ldap link 资源

参见

添加注释

用户贡献的注释 1 个注释

-1
Roland Gruber
6 年前
以下解决方法可用于在 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);
To Top