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.