(PHP 4, PHP 5, PHP 7, PHP 8)
ldap_read — Читает запись
$ldap
,$base
,$filter
,$attributes
= [],$attributes_only
= 0,$sizelimit
= -1,$timelimit
= -1,$deref
= LDAP_DEREF_NEVER
,$controls
= null
Функция выполняет поиск для заданного фильтра filter
в каталоге в каталоге с областью действия LDAP_SCOPE_BASE
.
Эквивалентно чтению записи из директории.
Можно
также выполнять параллельный поиск. В этом случае первым аргументом должен быть массив
экземпляров LDAP\Connection, а не один экземпляр.
Если поиск не должен использовать один и тот же базовый DN и фильтр, в качестве аргументов
можно передать массив базовых DN и/или массив фильтров.
Количество элементов в массивах должно совпадать с количеством экземпляров LDAP\Connection,
поскольку первые записи массивов используются для одного поиска, вторые — для другого и так далее.
При параллельном поиске возвращается массив экземпляров LDAP\Result,
если только не возникла ошибка, при которой возвращается значение false
.
ldap
Экземпляр класса LDAP\Connection, который возвращает функция ldap_connect().
base
Базовое DN для каталога.
filter
Пустой фильтр не допустим. Если необходимо получить абсолютно всю информацию
для этой записи, используйте фильтр objectClass=*
.
Если известно какие типы записи используются на сервере каталогов, то можно
использовать соответствующий фильтр, такой как objectClass=inetOrgPerson
.
attributes
Массив необходимых атрибутов, например, array("mail", "sn", "cn")
.
Обратите внимание, что "dn" всегда возвращается, независимо от того, какие типы атрибутов требуются.
Использование этого параметра намного более эффективно чем действие по умолчанию (которое возвращает все атрибуты и их присвоенные значения). Поэтому использование этого параметра нужно считать хорошей практикой.
attributes_only
Должен быть равен 1, только если требуются типы атрибута. Если равен 0, то, по умолчанию, выбираются и типы атрибутов и значения.
sizelimit
Позволяет ограничить количество выбранных записей. Установка этого параметра равным 0 означает, что ограничение отсутствует.
Замечание:
Этот параметр НЕ может переопределять предустановку sizelimit на стороне сервера. Хотя его можно установить ниже.
Некоторые хосты серверов каталогов будут сконфигурированы так, чтобы возвратить не больше, чем предварительно установленное число записей. Если это произойдёт, то сервер укажет, что только возвратил частичный набор результатов. Это также происходит, если используется этот параметр, чтобы ограничить количество выбранных записей.
timelimit
Устанавливает число секунд, ограничивающее процесс поиска. Установка этого параметра равным 0 означает, что ограничение отсутствует.
Замечание:
Этот параметр НЕ может переопределять предустановку timelimit на стороне сервера. Хотя его можно установить ниже.
deref
Определяет то, как псевдонимы должны быть обработаны во время поиска. Может быть одним из следующих:
LDAP_DEREF_NEVER
— (по умолчанию) псевдонимы никогда не разыменовываются.
LDAP_DEREF_SEARCHING
— псевдонимы должны быть разыменованы во время поиска,
но не при определении местоположения базового объекта поиска.
LDAP_DEREF_FINDING
— псевдонимы должны быть разыменованы при определении
местоположения базового объекта, но не во время поиска.
LDAP_DEREF_ALWAYS
— псевдонимы должны всегда разыменовываться.
controls
Массив управляющих объектов протокола LDAP для отправки в запросе.
Возвращает экземпляр
класса LDAP\Result,
массив экземпляров класса
LDAP\Result или false
, если возникла ошибка.
Версия | Описание |
---|---|
8.1.0 |
Параметр ldap теперь ожидает экземпляр класса LDAP\Connection;
раньше параметр ждал ресурс (resource) ldap link .
|
8.1.0 | Возвращает экземпляр класса LDAP\Result; раньше возвращался ресурс (resource). |
8.0.0 |
Параметр controls теперь допускает значение null;
раньше значение по умолчанию равнялось [] .
|
7.3.0 |
Добавлена поддержка параметра controls
|