setOption($ldapConnection, LDAP_OPT_PROTOCOL_VERSION, $version); } /** * Search LDAP tree using the provided filter. * @param resource $ldapConnection * @param string $baseDn * @param string $filter * @param array|null $attributes * @return resource */ public function search($ldapConnection, $baseDn, $filter, array $attributes = null) { return ldap_search($ldapConnection, $baseDn, $filter, $attributes); } /** * Get entries from an ldap search result. * @param resource $ldapConnection * @param resource $ldapSearchResult * @return array */ public function getEntries($ldapConnection, $ldapSearchResult) { return ldap_get_entries($ldapConnection, $ldapSearchResult); } /** * Search and get entries immediately. * @param resource $ldapConnection * @param string $baseDn * @param string $filter * @param array|null $attributes * @return resource */ public function searchAndGetEntries($ldapConnection, $baseDn, $filter, array $attributes = null) { $search = $this->search($ldapConnection, $baseDn, $filter, $attributes); return $this->getEntries($ldapConnection, $search); } /** * Bind to LDAP directory. * @param resource $ldapConnection * @param string $bindRdn * @param string $bindPassword * @return bool */ public function bind($ldapConnection, $bindRdn = null, $bindPassword = null) { return ldap_bind($ldapConnection, $bindRdn, $bindPassword); } }