2009-04-17 6 views
1

Ich kann den Benutzernamen erhalten, indem dies zu tun:Zend Framework: Wie kann man den Vornamen eines authentifizierten Benutzers herausfinden?

public function indexAction() 
{ 
    $this->view->username = Zend_Auth::getInstance()->getIdentity(); 
} 

„username“ ist die Spalte in der Tabelle, die die Identität überprüft. "Vorname" ist auch eine Spalte in dieser Tabelle. Wird in Zend_Auth nur der Benutzername gespeichert? Oder gibt es eine Möglichkeit, aus der Zeile des Benutzers in der Tabelle auf andere Spalten zuzugreifen?

Antwort

3

Sie verwenden also einen DbTable-Adapter, richtig. Und erhalten Sie die Tabellenzeile nach der Authentifizierung wie folgt zurück:

Dann ja, die gesamte Benutzerzeile ist verfügbar. Probiere es einfach!

Aus dem Handbuch:

Neben der Verfügbarkeit der getIdentity() Methode auf das Objekt Authentifizierungsergebnis, Zend_Auth_Adapter_DbTable unterstützt auch die Tabellenzeile wenn die Authentifizierung erfolg:

// Print the identity 
echo $result->getIdentity() . "\n\n"; 

// Print the result row 
print_r($authAdapter->getResultRowObject()); 

/* Output: 
my_username 

Array 
(
    [id] => 1 
    [username] => my_username 
    [password] => my_password 
    [real_name] => My Real Name 
) 
*/ 

Or see for yourself!

Verwandte Themen