1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224
|
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision: 297028 $ -->
<refentry xml:id="function.ldap-read" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>ldap_read</refname>
<refpurpose>Read an entry</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>resource</type><methodname>ldap_read</methodname>
<methodparam><type>resource</type><parameter>link_identifier</parameter></methodparam>
<methodparam><type>string</type><parameter>base_dn</parameter></methodparam>
<methodparam><type>string</type><parameter>filter</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter>attributes</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>attrsonly</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>sizelimit</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>timelimit</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>deref</parameter></methodparam>
</methodsynopsis>
<para>
Performs the search for a specified <parameter>filter</parameter> on the
directory with the scope <constant>LDAP_SCOPE_BASE</constant>. So it is
equivalent to reading an entry from the directory.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>link_identifier</parameter></term>
<listitem>
<para>
An LDAP link identifier, returned by <function>ldap_connect</function>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>base_dn</parameter></term>
<listitem>
<para>
The base DN for the directory.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>filter</parameter></term>
<listitem>
<para>
An empty filter is not allowed. If you want to retrieve absolutely all
information for this entry, use a filter of
<literal>objectClass=*</literal>. If you know which entry types are
used on the directory server, you might use an appropriate filter such
as <literal>objectClass=inetOrgPerson</literal>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>attributes</parameter></term>
<listitem>
<para>
An array of the required attributes, e.g. array("mail", "sn", "cn").
Note that the "dn" is always returned irrespective of which attributes
types are requested.
</para>
<para>
Using this parameter is much more efficient than the default action
(which is to return all attributes and their associated values).
The use of this parameter should therefore be considered good
practice.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>attrsonly</parameter></term>
<listitem>
<para>
Should be set to 1 if only attribute types are wanted. If set to 0
both attributes types and attribute values are fetched which is the
default behaviour.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>sizelimit</parameter></term>
<listitem>
<para>
Enables you to limit the count of entries fetched. Setting this to 0
means no limit.
</para>
<note>
<para>
This parameter can NOT override server-side preset sizelimit. You can
set it lower though.
</para>
<para>
Some directory server hosts will be configured to return no more than
a preset number of entries. If this occurs, the server will indicate
that it has only returned a partial results set. This also occurs if
you use this parameter to limit the count of fetched entries.
</para>
</note>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>timelimit</parameter></term>
<listitem>
<para>
Sets the number of seconds how long is spend on the search. Setting
this to 0 means no limit.
</para>
<note>
<para>
This parameter can NOT override server-side preset timelimit. You can
set it lower though.
</para>
</note>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>deref</parameter></term>
<listitem>
<para>
Specifies how aliases should be handled during the search. It can be
one of the following:
<itemizedlist>
<listitem>
<simpara>
<constant>LDAP_DEREF_NEVER</constant> - (default) aliases are never
dereferenced.
</simpara>
</listitem>
<listitem>
<simpara>
<constant>LDAP_DEREF_SEARCHING</constant> - aliases should be
dereferenced during the search but not when locating the base object
of the search.
</simpara>
</listitem>
<listitem>
<simpara>
<constant>LDAP_DEREF_FINDING</constant> - aliases should be
dereferenced when locating the base object but not during the search.
</simpara>
</listitem>
<listitem>
<simpara>
<constant>LDAP_DEREF_ALWAYS</constant> - aliases should be dereferenced
always.
</simpara>
</listitem>
</itemizedlist>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns a search result identifier or &false; on error.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>4.0.5</entry>
<entry>
Parallel searches support was added.
See <function>ldap_search</function> for details.
</entry>
</row>
<row>
<entry>4.0.2</entry>
<entry>
The <parameter>attrsonly</parameter>, <parameter>sizelimit</parameter>,
<parameter>timelimit</parameter> and <parameter>deref</parameter> were
added.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->
|