PHP Conference Japan 2024

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_connect() 傳回的 LDAP\Connection 實例。

dn

要重新整理的項目的 dn。

ttl

客戶端要求項目在目錄中存在的秒數(介於 1 到 31557600 之間),之後會自動移除。

傳回值

根據 RFC:responseTtl 欄位是伺服器選擇作為該項目的存活時間欄位的秒數。它不得小於客戶端請求的值,並且可能更大。但是,為了允許伺服器維護相對精確的目錄,並防止客戶端濫用動態擴展,伺服器可以將客戶端請求的存活時間值縮短到最少 86400 秒(一天)。如果發生錯誤,將會傳回 false

變更記錄

版本 描述
8.1.0 ldap 參數現在期望一個 LDAP\Connection 實例;先前,期望的是有效的 ldap link 資源

參見

新增註解

使用者貢獻註解 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