Wie funktioniert Zend_Auth-Speicher arbeiten?

Ist dies sehr einfach. Ich Schreibe

$auth->getStorage()->write($user);

Und dann möchte ich in einem separaten Prozess, um dieses zu laden $user, aber ich kann nicht, weil

$user = $auth->getIdentity();

leer ist. Habe ich nicht gerade...? Warum hat es nicht funktioniert? Halp?

[BEARBEITEN 2011-04-13]

Dies wurde gebeten vor fast zwei Jahren. Tatsache ist aber, dass ich die Frage wiederholt im Juli 2010 und erhielt eine fantastische Antwort, die ich damals einfach nicht verstehen.

Link: Zend_Auth schreiben fehlschlägt, Lagerung

Ich habe da ein sehr nettes kleines Klasse, die ich benutze (manchmal mit zusätzlichen Optimierungen) alle meine Projekte mit der gleichen Speicher-engine als Zend_Auth aber umgehen, all das schlechte.

<?php

class Qapacity_Helpers_Storage {

    public function save($name = 'default', $data) {

        $session = new Zend_Session_Namespace($name);
        $session->data = $data;

        return true;
    }

    public function load($name = 'default', $part = null) {

        $session = new Zend_Session_Namespace($name);

        if (!isset($session->data))
            return null;

        $data = $session->data;

        if ($part && isset($data[$part]))
            return $data[$part];

        return $data;
    }

    public function clear($name = 'default') {

        $session = new Zend_Session_Namespace($name);

        if (isset($session->data))
            unset($session->data);

        return true;
    }

}

?>
Das andere problem könnte sein, dass der Speicher (und Zend_Auth) nicht die gleiche Konfiguration hat. Das schreiben an einem Ort, Lesen die andere.

InformationsquelleAutor John | 2009-09-17

Schreibe einen Kommentar