PHP: Speichern von 'Objekten' innerhalb von $_SESSION
In PHP verwendet man das $_SESSION Superglobal, um Daten zu speichern, die über mehrere Seitenanforderungen hinweg bestehen bleiben müssen. Die in $_SESSION gespeicherten Daten sind in der Regel in Form von Schlüssel-Wert-Paaren, wobei der Schlüssel ein String und der Wert ein beliebiger Datentyp sein kann, einschließlich Objekten. Um ein Objekt in $_SESSION zu speichern, kann man es einfach einem Schlüssel zuweisen:
$_SESSION['object_key'] = $object;
Sie können das Objekt später aus $_SESSION abrufen, indem Sie auf den Schlüssel zugreifen:
$object = $_SESSION['object_key'];
Es ist wichtig zu beachten, dass das in der Sitzung gespeicherte Objekt serialisierbar sein muss, andernfalls kann es nicht in der Sitzung gespeichert werden.
<?php
class Example
{
public $name;
public $age;
public function __sleep()
{
return ['name', 'age'];
}
}
$example = new Example();
$example->name = 'John Doe';
$example->age = 30;
$_SESSION['example'] = $example;
Es ist auch wichtig zu beachten, dass das Speichern großer Objekte in $_SESSION dazu führen kann, dass Ihre Sitzungen groß werden und viel Speicher auf dem Server verbrauchen. Daher sollten Sie sich beim Speichern von Daten in $_SESSION immer bewusst sein, wie viel Daten Sie speichern.