__PHP_Incomplete_Class_Name falsch

Sind wir zufällig einige sehr seltsame Fehler-logs. Sie passieren nicht auf jeder Seite ein Treffer, sogar mit dem gleichen Parameter/Aktionen/etc., und Sie scheinen nicht wiederholbar, jeder ist anders in seiner crash-Lage und Kontext. Aber fast alle haben falsch __PHP_Incomplete_Class_Name, als die Ursache.

Einem solchen Fehler ist:

main(): Das Skript versucht, zum ausführen einer Methode oder der Zugriff auf eine Eigenschaft eines unvollständigen Objekt. Bitte stellen Sie sicher, dass die definition der Klasse "LoginLogging" des Objekts, die Sie versuchen zu operieren geladen wurde vor unserialize() aufgerufen wird oder eine __autoload () - Funktion zum laden der Klassendefinition

Das problem ist, es gibt keine "LoginLogging" - Klasse. Das Objekt bezieht es sich auf das war der Typ ScormElement, wenn es gespeichert wurde, in die Sitzung.
Mache einen dump der variable gibt:

__PHP_Incomplete_Class::__set_state(array(
 '__PHP_Incomplete_Class_Name' => 'LoginLogging',
 'intUserId' => '64576',
 '__intUserId' => '64576',
 'intScormId' => '665',
 '__intScormId' => '665',
 'intScoId' => '9255',
 '__intScoId' => '9255',
 'strElement' => 'cmi.core.lesson_location',
 '__strElement' => 'cmi.core.lesson_location',
 'strValue' => '1',
 'dttTimeModified' => QDateTime::__set_state(array(
   'blnDateNull' => false,
   'blnTimeNull' => false,
   'strSerializedData' => '2011-08-31T08:05:22-0600',
   'date' => '2011-08-31 08:05:22',
   'timezone_type' => 1,
   'timezone' => '-06:00',
 )),
 '__strVirtualAttributeArray' => array (),
 '__blnRestored' => true,
 'objUser' => NULL,
 'objScorm' => NULL,
)

Alle Eigenschaften beibehalten werden, korrekt und entsprechen der definition der Klasse für ScormElement. Aber der name der Klasse ist falsch. Es ist keine Klasse mit dem Namen LoginLogging.

Woran liegt das und wie lösen wir es???

Bearbeiten: Dies ist nur ein Beispiel. Andere Fehler sind sehr ähnlich in der Struktur, aber auf andere Klasse-Typen und haben unterschiedliche unvollständige Namen. Jedoch, ALLE unvollständigen Namen haben die gleiche Zeichenfolge Länge der richtige Klassenname.

Bearbeiten 2011-10-27: ich bin immer noch zu sehen, diesen Fehler meldet, und haben keinen Erfolg gehabt bei der Suche nach einer Lösung. Jede Hilfe würde geschätzt werden.

PHP 5.3.3, APC, Standard-session-handler.

können Sie zeigen, was die main() Funktion aussieht? oder die Klasse, die aufgerufen wird, sieht wie?
Sie scheinen sich auf 'LoginLogging' im code (zweite Zeile) - was ist das eigentlich? Ich vermute, dies ist die Ursache für den Fehler...
Wie bekommen Sie dieses Objekt? unserialize? Sitzung?
Die zweite Zeile ist nicht mein code. Das ist der dump der Variablen, die das problem verursacht.Mein code nicht enthalten "LoginLogging" als eigenständige Referenz. Es ist ein FM_LoginLogging Klasse und ein FmLoginlogging Klasse, aber nirgends haben wir einen "LoginLogging" Klasse / variable-name / Funktion / etc.
Es gibt keine Funktion namens main(). 😛 der definition Der Klasse für ScormElement ist Recht groß, aber man bekommt eine ziemlich gute Vorstellung von dem es auf der Basis der serialisierten version gezeigt.

InformationsquelleAutor VexedPanda | 2011-09-01

Schreibe einen Kommentar