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.