19 declare(strict_types=1);
47 $this->handle = $a_ldap_handle;
49 if ($a_result !==
null && $a_result !==
false) {
50 $this->result = $a_result;
59 return count($this->rows);
75 public function get(): array
77 return is_array($this->last_row) ? $this->last_row : [];
92 public function run(): self
95 $entries = ldap_get_entries($this->handle, $this->result);
107 $num = $entries[
'count'];
112 for ($row_counter = 0; $row_counter < $num; $row_counter++) {
114 $this->rows[] =
$data;
115 $this->last_row =
$data;
125 foreach ($entry as $key => $value) {
130 $key = strtolower($key);
132 $data[
'dn'] = $value;
135 if (is_array($value)) {
136 if ($value[
'count'] > 1) {
137 for ($i = 0; $i < $value[
'count']; $i++) {
138 $data[$key][] = $value[$i];
140 } elseif ($value[
'count'] === 1) {
141 $data[$key] = $value[0];
144 $data[$key] = $value;
154 ldap_free_result($this->result);
numRows()
Total count of resulted rows.
run()
Starts ldap_get_entries() and transforms results.
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
setResult($result)
Resource from ldap_search()
getRows()
Returns complete results.
__construct($a_ldap_handle, $a_result=null)
toSimpleArray(array $entry)
Transforms results from ldap_get_entries() to a simple format.
addEntriesToRows(array $entries)
Adds Results from ldap_get_entries() to rows.