Utilizzo una mia classe personalizzata per gestire le sessioni nel database

# session.php
Codice PHP:
class Session {
    var 
$database;
    
    function 
Session($database) {        
        
$this->database = & $database;
        
        
session_set_save_handler(array($this'open'),
                                 array(
$this'close'),
                                 array(
$this'read'),
                                 array(
$this'write'),
                                 array(
$this'destroy'),
                                 array(
$this'gc'));
                                 
        
$this->startSession();
    }

    function 
startSession() {
        @
session_start();
    }
    
    function 
deleteSession() {
        @
session_destroy();
    }
    
    function 
open($sessPath$sessName) {
        return 
true;
    }

    function 
close() {
        return 
true;
    }

    function 
read($sessId) {
        
$query $this->database->mysqlQuery('readSession', array($sessId), 1);
        if (
$this->database->mysqlNumRows()) {
            
$dataSession $this->database->mysqlFetchAssoc();
            return 
$dataSession['sessData'];
        }
    }

    function 
write($sessId$sessData) {
        
$query $this->database->mysqlQuery('writeSession', array($sessId$sessDatatime()));
    }

    function 
destroy($sessId) {
        
$query $this->database->mysqlQuery('destroySession', array($sessId));
    }

    function 
gc($sessMaxLifeTime) {
        
$query $this->database->mysqlQuery('deleteSessions', array((time() - SESSION_TIME)));
    }
}

?> 
# index.php
Codice PHP:
<?php

error_reporting
(E_ALL);

class 
Core {
    function 
Core() {
        
$this->initDatabase();
        
$this->initSession();
     }

function 
initDatabase() {
 
/*****/
}

    function 
initSession() {
                @
ob_start();
        require_once(
PATH.'includes/server.php');
        require_once(
PATH.'includes/session.php');
        
$this->session = new Session($this->database);
                echo 
1;        
    }
}

non stampa echo 1 dopo aver inizializzato la sessione