PHP Conference Japan 2024

ldap_error

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

ldap_error傳回最後一個 LDAP 命令的 LDAP 錯誤訊息

說明

ldap_error(LDAP\Connection $ldap): 字串

傳回字串錯誤訊息,說明由指定 ldap 的最後一個 LDAP 命令產生的錯誤。雖然 LDAP errno 號碼是標準化的,但不同的函式庫會傳回不同的,甚至是本地化的文字錯誤訊息。切勿檢查特定的錯誤訊息文字,而應始終使用錯誤號碼來檢查。

除非您在 php.ini 中充分降低警告級別,或在 LDAP 命令前加上 @ (at) 符號以抑制警告輸出,否則產生的錯誤也會顯示在您的 HTML 輸出中。

參數

ldap

一個 LDAP\Connection 實例,由 ldap_connect() 返回。

返回值

返回字串錯誤訊息。

更新日誌

版本 說明
8.1.0 ldap 參數現在需要一個 LDAP\Connection 實例;先前需要一個有效的 ldap link 資源

另請參閱

  • ldap_err2str() - 將 LDAP 錯誤號碼轉換為字串錯誤訊息
  • ldap_errno() - 返回最後一個 LDAP 命令的 LDAP 錯誤號碼

新增筆記

使用者貢獻的筆記 2 則筆記

Michael Newton
7 年前
請注意,有時您可以通過獲取 LDAP_OPT_DIAGNOSTIC_MESSAGE 選項的值來獲得更詳細的錯誤訊息。

例如,在最近的連線錯誤之後,兩者提供了非常不同的資訊

<?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";
?>

這導致了

ldap_error: 無法連線到 LDAP 伺服器
ldap_get_option: TLS: 主機名稱與對等憑證中的 CN 不符
edA-qa at disemia dot com
16 年前
對於那些想知道的人來說,這個函數似乎與以下程式碼的功能相同
<?php
ldap_err2str
( ldap_errno() );
?>
To Top