Sancho: serialisierte klasseninstanz einlesen

Beitrag lesen

Hi,

Ist o.g. function load dann die "einfachste/beste/galanteste" Lösung oder ist mir ein Ansatz bisher entgangen?

In folgendem Beispiel wird der Variablen $c durch unserialize() bereits ein Objekt zugewiesen.
Habe es unter PHP4.4.0 und PHP 5.0.5 getestet (In PHP5 müsste var eigtl. noch spezifiziert werden).

<?  
  
class test  
{  
  var $toast = 'teaser!';  
  
  function toast()  
  {  
    echo $this->toast;  
  }  
}  
  
$a = new test;  
  
$b = serialize($a);  
  
$c = unserialize($b);  
  
$c->toast();  
  
?>

Einzige Voraussetzung dafür ist, wie im Manual steht, dass die Klasse vor Aufruf von unserialize definiert wurde.
Daher brauchst du gar keine eigene load-Methode bzw. -Funktion; du kannst deine erste Lösung einfach entsprechend abkürzen:

$record1 = unserialize(file_get_contents("dateiname"));

Freundliche Grüße,
Sancho