I\'m new to OOP and am writing one of my first classes. I work for an insurance broker and am trying to use a Class to store things about a quote, and store the Object as a
I am using this
if (!is_object($_SESSION)) $_SESSION = new ArrayObject();
Make sure that either the class definition is present before session_start() is called, e.g.
require_once 'class.MyClass.php';
session_start();
or set an unserialize_callback_func that will try to load the class definition as described at http://docs.php.net/function.unserialize.
edit: this can also be done via spl_autoload_register(). E.g.
spl_autoload_register(function($name) {
// only a demo ...this might be insecure ;-)
require_once 'class.'.$name.'.php';
});
session_start();
echo '<pre>';
var_dump($_SESSION);
echo '</pre>';
I managed to fix it all by myself, not sure how though.
I ensured that the page displaying the values was structured like:
require_once("Class.php");
session_start();
$_SESSION['myObject']->printVariables();
And that the page constructing the object was like:
# Include the class
require_once($_SERVER['DOCUMENT_ROOT'] . "/Class.php");
# Instantiate a new policy
$_SESSION['myObject'] = new quote('54');
$_SESSION['myObject']->printVariables();
I also made sure that the page displaying calling the object did not use any serialize functions, as they seemed to only cause errors.