PHP Conference Nagoya 2025

ldap_error

(PHP 4, PHP 5, PHP 7, PHP 8)

ldap_errorВозвратить сообщение об ошибке LDAP последней команды

Описание

ldap_error(LDAP\Connection $ldap): string

Возвращает строковое сообщение об ошибке, объясняя ошибку, сгенерированную последней командой LDAP для данного идентификатора соединения ldap. В то время как LDAP errno числа стандартизированы, различные библиотеки возвращают отличающийся или даже локализованные текстовые сообщения об ошибках. Никогда не проверяйте на определённый текст сообщения об ошибке, всегда используйте кодами ошибок для проверки.

Если вы не снизите достаточно уровень предупреждений в php.ini, или префикс ваших LDAP-команд не будет с символом @ для подавления вывода предупреждений, генерируемые ошибки будут также отображаться в вашем HTML выводе.

Список параметров

ldap

Экземпляр класса LDAP\Connection, который возвращает функция ldap_connect().

Возвращаемые значения

Возвращает сообщение ошибки в виде строки.

Список изменений

Версия Описание
8.1.0 Параметр ldap теперь ожидает экземпляр класса LDAP\Connection; раньше параметр ждал ресурс (resource) ldap link .

Смотрите также

  • ldap_err2str() - Преобразовать код ошибки LDAP в строковое сообщение об ошибке
  • ldap_errno() - Возвратить номер ошибки LDAP последней команды

Добавить

Примечания пользователей 2 notes

up
15
Michael Newton
7 years ago
Note that you can sometimes get more detailed error messages by getting the value of the LDAP_OPT_DIAGNOSTIC_MESSAGE option.

For example, after a recent connection error the two gave very different info:

<?php
$conn
= ldap_connect($server);
ldap_search($conn, $dn, $query);

echo
"ldap_error: " . ldap_error($conn);
ldap_get_option($conn, LDAP_OPT_DIAGNOSTIC_MESSAGE, $err);
echo
"ldap_get_option: $err";
?>

This resulted in:

ldap_error: Can't contact LDAP server
ldap_get_option: TLS: hostname does not match CN in peer certificate
up
5
edA-qa at disemia dot com
16 years ago
For those wondering, this function appears to do the same thing as:
<?php
ldap_err2str
( ldap_errno() );
?>
To Top