/** * Modifier des entrées d'un annuaire LDAP. * @static * @param string $dn le nom distingué de l'entrée à supprimer * @param CopixLdapEntry $entry valeurs à insérer */ function update($dn, $entry) { if ($this->_connection === null) { trigger_error('not connected', E_USER_ERROR); } if ($this->_baseDn === null) { trigger_error('no given base dn', E_USER_ERROR); } //first we delete empty elements. $toDelete = array(); foreach ($entryAttributes = $entry->asArray() as $key => $value) { if ($value == "" || is_array($value) && count($value) == 0) { $toDelete[$key] = array(); } } if (count($toDelete) > 0) { ldap_mod_del($this->_connection, $dn, $toDelete); } if (ldap_modify($this->_connection, $dn, $this->_cleanArrayForOperations($entryAttributes)) !== false) { return true; } else { return false; } }
/** * Modifier des entrées d'un annuaire LDAP. * @static * @param string $dn le nom distingué de l'entrée à supprimer * @param CopixLdapEntry $entry valeurs à insérer */ public function update($dn, $entry) { $this->_assertConnexion(); //first we delete empty elements. $toDelete = array(); foreach ($entryAttributes = $entry->asArray() as $key => $value) { if ($value == "" || is_array($value) && count($value) == 0) { $toDelete[$key] = array(); } } if (count($toDelete) > 0) { ldap_mod_del($this->_connection, $dn, $toDelete); } if (ldap_modify($this->_connection, $dn, $this->_cleanArrayForOperations($entryAttributes)) !== false) { return true; } else { return false; } }