Zend_Ldap_Attribute Zend_Ldap_Attribute ist eine Helfer Klasse die nur Statische Methoden anbietet für die Manipulation von Arrays die zur Struktur passen welche in den Zend_Ldap Data Änderungs Methoden verwendet werden und zum Datenformat das vom Zend_Ldap Server benötigt wird. PHP Datentypen werden wie folgt konvertiert: string Es wird keine Konvertierung durchgeführt. integer und float Der Wert wird zu einem String konvertiert. boolean TRUE wird zu 'TRUE' konvertiert und FALSE zu 'FALSE' object und array Diese Werte werden zu einem String konvertiert indem serialize() verwendet wird. resource Wenn eine stream Ressource angegeben wurde, werden die Daten durch den Aufruf von stream_get_contents() geholt. others Alle anderen Datentypen (speziell nicht-Stream Ressourcen) werden verweigert. Beim Lesen von Attributwerten werden die folgenden Konvertierungen durchgeführt: 'TRUE' Wird zu TRUE konvertiert. 'FALSE' Wird zu FALSE konvertiert. others Alle anderen Strings werden nicht automatisch konvertiert und so wie Sie sind übergeben. Zend_Ldap_Attribute API Methode Beschreibung void setAttribute(array &$data, string $attribName, mixed $value, boolean $append) Setzt die Attribute $attribName in $data auf den Wert $value. Wenn $append TRUE ist (standardmäßig FALSE) wird $value an das Attribut angehängt. $value kann ein skalarer Wert oder ein Array von skalaren Werten sein. Eine Konvertierung wird durchgeführt. array|mixed getAttribute(array $data, string $attribName, integer|null $index) Gibt das Attribut $attribName von $data zurück. Wenn $index NULL ist (Standardwert) wird ein Array zurückgegeben welches alle Werte für das angegebene Attribut enthält. Ein leeres Array wird zurückgegeben wenn das Attribut im angegebenen Array nicht existiert. Wenn ein Integer für den Index spezifiziert wird, dann wird der korrespondierende Wert mit dem gegebenen Index zurückgegeben. Wenn der Index ausserhalb der Grenzen ist wird NULL zurückgegeben. Eine Konvertierung wird durchgeführt. boolean attributeHasValue(array &$data, string $attribName, mixed|array $value) Prüft ob das Attribut $attribName in $data den Wert oder die Werte welche in $value angegeben wurden hat. Die Methode gibt nur dann TRUE zurück wenn alle Werte von $value im Attribut enthalten sind. Der Vergleich wird strikt durchgeführt (der Datentyp wird respektiert). void removeDuplicatesFromAttribute(array &$data, string $attribName) Entfernt alle Duplikate vom Attribut $attribName in $data. void removeFromAttribute(array &$data, string $attribName, mixed|array $value) Entfernt den Wert oder die Werte vom Attribut $attribName die in $value angegeben werden von $data. string|null convertToLdapValue(mixed $value) Konvertiert einen PHP Datentyp in seine LDAP Repräsentation. Siehe die Einleitung für Details. mixed convertFromLdapValue(string $value) Konvertiert einen LDAP Wert in seinen PHP Datentyp. Siehe die Einleitung für Details. string|null convertToLdapDateTimeValue(integer $value, boolean $utc) Konvertiert einen Zeitpunkt in seine LDAP Datum und Zeit Repräsentation. Wenn $utc TRUE ist (standardmäßig ist es FALSE) dann wird der resultierende LDAP Datum und Zeit String in UTC sein, andernfalls wird ein lokaler Datum und Zeit String zurückgegeben. integer|null convertFromLdapDateTimeValue(string $value) Konvertiert eine Datum und Zeit Repräsentation für LDAP in einen Zeitpunkt. Die Methode gibt NULL zurück wenn $value nicht in einen PHP Zeitpunkt zurückkonvertiert werden kann. void setPassword(array &$data, string $password, string $hashType, string $attribName) Setzt ein LDAP Passwort für das Attribut $attribName in $data zurück. $attribName ist standardmäßig 'userPassword' welches das standardmäßige Attribut für Passwörter ist. Der Hash für das Passwort kann mit $hashType spezifiziert werden. Der Standardwert ist Zend_Ldap_Attribute::PASSWORD_HASH_MD5 wobei Zend_Ldap_Attribute::PASSWORD_HASH_SHA die andere Möglichkeit ist. string createPassword(string $password, string $hashType) Erstellt ein LDAP Passwort. Der Hash für das Passwort kann mit $hashType spezifiziert werden. Der Standardwert ist Zend_Ldap_Attribute::PASSWORD_HASH_MD5 wobei Zend_Ldap_Attribute::PASSWORD_HASH_SHA die andere Möglichkeit ist. void setDateTimeAttribute(array &$data, string $attribName, integer|array $value, boolean $utc, boolean $append) Setzt das Attribut $attribName in $data auf den Datum und Zeitwert $value. Wenn $append TRUE ist (standardmäßig ist er FALSE) dann wird $value an das Attribut angehängt. $value kann ein Integerwert oder ein Array von Integerwerten sein. Die Konvertierung von Datum und Zeit wird entsprechend zu Zend_Ldap_Attribute::convertToLdapDateTimeValue() durchgeführt. array|integer getDateTimeAttribute(array $data, string $attribName, integer|null $index) Gibt das Datum und Zeit Attribut $attribName von $data zurück. Wenn $index NULL ist (das ist der Standardwert) dann wird ein Array zurückgegeben welches alle Datum und Zeitwerte für das angegebene Attribut enthält. Ein leeres Array wird zurückgegeben wenn das Attribut im angegebenen Array nicht existiert. Wenn ein Integer Index spezifiziert wird, dann wird der korrespondierende Datum und Zeitwert vom angegebenen Index zurückgegeben. Wenn der Index ausserhalb der Grenzen ist dann wird NULL zurückgegeben. Die Konvertierung von Datum und Zeit wird entsprechend zu Zend_Ldap_Attribute::convertFromLdapDateTimeValue() durchgeführt.