De prime abord, cette idée peut paraitre saugrenue. Quelle peut être l'intérêt de stocker des variables de configuration au sein d'une session ?
J'avoue que je n'en ai absolument aucune idée. Ne me jetez pas la pierre, je cherchais juste un bon exemple pour montrer que l'on peut enregistrer des variables de configuration n'importe ou avec un minimum d'abstraction.
De prime abord, cette idée peut paraitre saugrenue. Quelle peut être l'intérêt de stocker des variables de configuration au sein d'une session ?
J'avoue que je n'en ai absolument aucune idée. Ne me jetez pas la pierre, je cherchais juste un bon exemple pour montrer que l'on peut enregistrer des variables de configuration n'importe ou avec un minimum d'abstraction.
La classe Session_ConfigurationHandler
class Session_ConfigurationHandler extends ConfigurationHandler implements iConfigurationHandler {
private $array_access;
public function __construct($array_access, $auto=null) {
parent::__construct($auto);
if (strlen(session_id())<=0) throw new Exception('need a valid SID resource');
$r = (!session_is_registered($array_access))
? (session_register($array_access))
? true
: new Exception('failed to define \''.$array_access.'\'')
: new Exception('\''.$array_access.'\' is already defined');
if ($r instanceof Exception) throw $r;
}
public function load() {
$this->setData($_SESSION[$this->array_access]);
return $this;
}
public function save() {
$_SESSION[$this->array_access] = $this->getData();
return $this;
}
}