array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'en', ), 'this' => array ( 0 => 'function.ldap-escape.php', 1 => 'ldap_escape', ), 'up' => array ( 0 => 'ref.ldap.php', 1 => 'LDAP Functions', ), 'prev' => array ( 0 => 'function.ldap-error.php', 1 => 'ldap_error', ), 'next' => array ( 0 => 'function.ldap-exop-passwd.php', 1 => 'ldap_exop_passwd', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/ldap/functions/ldap-escape.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.6.0, PHP 7, PHP 8)
ldap_escape — Escape a string for use in an LDAP filter or DN
Escapes value
for use in the context implied by
flags
.
value
The value to escape.
ignore
Characters to ignore when escaping.
flags
The context the escaped string will be used in:
LDAP_ESCAPE_FILTER
for filters to be used with
ldap_search(), or
LDAP_ESCAPE_DN
for DNs.
If neither flag is passed, all chars are escaped.
Returns the escaped string.
When building an LDAP filter, you should use ldap_escape with LDAP_ESCAPE_FILTER flag.
Example #1 Searching for an email address
<?php
// $ds is a valid LDAP\Connection instance for a directory server
// $mail is an email address provided by the user in a form
$base = "o=My Company, c=US";
$filter = "(mail=".ldap_escape($mail, "", LDAP_ESCAPE_FILTER).")";
$sr = ldap_search($ds, $base, $filter, array("sn", "givenname", "mail"));
$info = ldap_get_entries($ds, $sr);
echo $info["count"]." entries returned\n";
?>