1--TEST--
2ldap_search() test
3--CREDITS--
4Davide Mendolia <idaf1er@gmail.com>
5Patrick Allaert <patrickallaert@php.net>
6Belgian PHP Testfest 2009
7--SKIPIF--
8<?php
9require_once('skipif.inc');
10require_once('skipifbindfailure.inc');
11?>
12--FILE--
13<?php
14include "connect.inc";
15
16$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
17insert_dummy_data($link, $base);
18
19$dn = "$base";
20$filter = "(objectclass=person)";
21var_dump(
22    $result = ldap_search($link, $dn, $filter, array('sn'), 1, 3),
23    ldap_get_entries($link, $result)
24);
25
26var_dump(
27    $result = ldap_search($link, $dn, $filter, array('sn'), 1, 1),
28    ldap_get_entries($link, $result)
29);
30?>
31--CLEAN--
32<?php
33include "connect.inc";
34
35$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
36remove_dummy_data($link, $base);
37?>
38--EXPECTF--
39resource(%d) of type (ldap result)
40array(4) {
41  ["count"]=>
42  int(3)
43  [0]=>
44  array(4) {
45    ["sn"]=>
46    array(1) {
47      ["count"]=>
48      int(0)
49    }
50    [0]=>
51    string(2) "sn"
52    ["count"]=>
53    int(1)
54    ["dn"]=>
55    string(%d) "cn=userA,%s"
56  }
57  [1]=>
58  array(4) {
59    ["sn"]=>
60    array(1) {
61      ["count"]=>
62      int(0)
63    }
64    [0]=>
65    string(2) "sn"
66    ["count"]=>
67    int(1)
68    ["dn"]=>
69    string(%d) "cn=userB,%s"
70  }
71  [2]=>
72  array(4) {
73    ["sn"]=>
74    array(1) {
75      ["count"]=>
76      int(0)
77    }
78    [0]=>
79    string(2) "sn"
80    ["count"]=>
81    int(1)
82    ["dn"]=>
83    string(%d) "cn=userC,cn=userB,%s"
84  }
85}
86
87Warning: ldap_search(): Partial search results returned: Sizelimit exceeded in %s on line %d
88resource(%d) of type (ldap result)
89array(2) {
90  ["count"]=>
91  int(1)
92  [0]=>
93  array(4) {
94    ["sn"]=>
95    array(1) {
96      ["count"]=>
97      int(0)
98    }
99    [0]=>
100    string(2) "sn"
101    ["count"]=>
102    int(1)
103    ["dn"]=>
104    string(%d) "cn=userA,%s"
105  }
106}
107