1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
--TEST--
Test session_set_save_handler() : incomplete implementation
--INI--
session.save_handler=files
session.name=PHPSESSID
session.gc_probability=0
--SKIPIF--
<?php include('skipif.inc'); ?>
--FILE--
<?php
ob_start();
/*
* Prototype : bool session_set_save_handler(SessionHandler $handler [, bool $register_shutdown_function = true])
* Description : Sets user-level session storage functions
* Source code : ext/session/session.c
*/
echo "*** Testing session_set_save_handler() : incomplete implementation ***\n";
class MySession6 extends SessionHandler {
public function open($path, $name) {
// don't call parent
return true;
}
public function read($id) {
// should error because parent::open hasn't been called
return parent::read($id);
}
}
$handler = new MySession6;
session_set_save_handler($handler);
session_start();
var_dump(session_id(), ini_get('session.save_handler'), $_SESSION);
session_write_close();
session_unset();
--EXPECTF--
*** Testing session_set_save_handler() : incomplete implementation ***
Warning: SessionHandler::read(): Parent session handler is not open in %ssession_set_save_handler_class_005.php on line %d
string(%d) "%s"
string(4) "user"
array(0) {
}
Warning: SessionHandler::write(): Parent session handler is not open in %ssession_set_save_handler_class_005.php on line %d
Warning: SessionHandler::close(): Parent session handler is not open in %ssession_set_save_handler_class_005.php on line %d
|