ldap_exop_refresh

(PHP 7 >= 7.3.0, PHP 8)

ldap_exop_refreshFacilitador para operação estendida REFRESH

Descrição

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

Realiza uma operação estendida REFRESH e retorna os dados.

Parâmetros

ldap

Uma instância de LDAP\Connection, retornada por ldap_connect().

dn

DN da entrada a ser atualizada.

ttl

Tempo em segundos (entre 1 e 31557600) que o cliente requer que a entrada exista no diretório antes de ser removida automaticamente.

Valor Retornado

Da RFC: O campo "responseTtl" é o tempo em segundos que o servidor decide ter como o campo de tempo-de-vida para a entrada. Não pode ser menor que o tempo que o cliente requisitou, mas pode ser maior. Entretando, para permitir que servidores mantenham um diretório relativamente preciso, e para evitar que clientes abusem das extensões dinâmicas, é permitido aos servidores encurtar um tempo-de-vida requisitado pelo cliente até um mínimo de 86400 segundos (um dia). false será retornado em caso de erro.

Registro de Alterações

Versão Descrição
8.1.0 O parâmetro ldap agora espera uma instância de LDAP\Connection; anteriormente, um resource ldap link válido era esperado.

Veja Também

add a note

User Contributed Notes 1 note

up
-1
Roland Gruber
5 years ago
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);
To Top