La configuración del controlador de guardado de sesión falla:
session_set_save_handler("sess_open", "sess_close", "sess_read", "sess_write", "sess_destroy", "sess_gc")
Porque estas devoluciones de llamada en las que desea registrarse no existen:
var_dump(is_callable("sess_open")); # FALSE
Esto se debe a que los métodos de su objeto deben registrarse correctamente como devoluciones de llamada. La devolución de llamada de un método de objeto se escribe en forma de matriz con dos elementos, el primero es el objeto, el segundo es una cadena del nombre del método. Ejemplo de PHP net que es similar al tuyo:
$handler = new FileSessionHandler();
session_set_save_handler(
array($handler, 'open'),
array($handler, 'close'),
array($handler, 'read'),
array($handler, 'write'),
array($handler, 'destroy'),
array($handler, 'gc')
);
Como puede ver, cada método se escribe como una sola matriz con el primer elemento $handler
siempre.
Desde dentro de la clase puedes usar $this
para referirse al mismo objeto. Pero antes de escribir completamente el suyo propio, compruebe el session_set_save_handler()
Página del manual de PHP
para obtener información, ejemplos y notas aportadas por los usuarios. Hay diferentes formas de organizar eso para su caso.