查詢

ldap_escape()函式—用法及示例

「 轉義LDAP搜尋過濾器中的特殊字元 」


函式名稱:ldap_escape()

函式描述:ldap_escape()函式用於轉義LDAP搜尋過濾器中的特殊字元。

適用版本:PHP 5 >= 5.6.0, PHP 7

語法:string ldap_escape ( string $value [, string $ignore [, int $flags ]] )

引數:

  • $value:要轉義的字串。
  • $ignore:可選引數,指定不需要轉義的字元。
  • $flags:可選引數,指定轉義型別的標誌。預設為 0。

返回值:返回轉義後的字串。

示例:

  1. 轉義一個字串中的特殊字元:
$value = '(cn=John Doe)';
$escapedValue = ldap_escape($value);
echo $escapedValue; // 輸出 \(cn=John Doe\)
  1. 指定不需要轉義的字元:
$value = 'John Doe';
$ignore = ' ';
$escapedValue = ldap_escape($value, $ignore);
echo $escapedValue; // 輸出 John Doe
  1. 指定轉義型別的標誌:
$value = '(cn=John Doe)';
$flags = LDAP_ESCAPE_FILTER;
$escapedValue = ldap_escape($value, null, $flags);
echo $escapedValue; // 輸出 \(cn=John Doe\)

注意事項:

  • ldap_escape()函式用於轉義LDAP搜尋過濾器中的特殊字元,以避免LDAP注入攻擊。
  • 預設情況下,函式會轉義所有特殊字元,包括括號、等號、斜槓等。如果希望保留某些字元不被轉義,可以使用$ignore引數。
  • 可以使用$flags引數指定轉義型別的標誌,包括LDAP_ESCAPE_FILTER(預設,用於搜尋過濾器中的轉義)和LDAP_ESCAPE_DN(用於轉義DN字串中的轉義)。
  • 如果在PHP版本低於5.6.0的環境中使用該函式,可以自行實現轉義邏輯,例如使用str_replace()函式替換特殊字元。
補充糾錯
上一個函式: ldap_exop()函式
下一個函式: ldap_error()函式
熱門PHP函式
分享連結