Mailinglisten-Archive |
>>> das hat etwas damit zu tun, wie php objekte in sessions speichert, >>> dazu gibt es zwei methoden, die du in deinem objekt definieren >>> solltest, welche sowohl beim beenden des aufrufes des skripts als >>> auch beim >>> starten des aufrufes des skripts beim wiederherstellen deines objektes >>> aufgerufen werden soll, a bissle tricky >>> >>> die zwei methoden heissen __sleep() und __wakeup() >> >> mir ist neu das man diese Methoden definieren muss! und ich glaube es >> auch nicht! > > Mir ist das ebenfalls neu, dass man das muss. > Das einzige was für mich logisch bzw. wichtig klingt, ist, dass man > das Objekt natürlich serialisieren muss, um es in der Session ablegen zu > können (soweit ich weiß muss man dafür aber nicht explizit serialize() > aufrufen, falls doch). > > afaik werden die Methoden bei der Serialisierung aber nicht > berücksichtigt und sind weder nach impliziten noch expliziten > unserialize() wieder verfügbar. > Der einzige wirkliche Sinn für die Verwendung der angesprochenen > Methoden wäre für mich, dass man das Problem der fehlenden Methoden > damit umgehen könnte. tatsache ist das man sich eigentlich um gar nix kümmern muss bei php (mit aktueller Version)!!! myObj.class.php class myObj { var $myVar = ''; } s1.php include 'myObj.class.php'; session_start(); $_SESSION['myObj'] = new myObj; $_SESSION['myObj']->myVar = 'myValue'; echo '<a href="s2.php">Seite 2</a>'; s2.php include 'myObj.class.php'; session_start(); echo 'myObj->myVar: ' . $_SESSION['myObj']->myVar; -- Sebastian Mendel (www.sebastianmendel.de) *www.warzonez.de* | www.tekkno4u.de | www.nofetish.com
php::bar PHP Wiki - Listenarchive