PHP ʖ²ἯTH º󍋼/A session_set_save_handler Description ע: The "write" handler is not executed until after the output stream is closed. Thus, output from debugging statements in the "write" handler will never be seen in the browser. If debugging output is necessary, it is suggested that the debug output be written to a file instead. ע: The write handler is not executed if the session contains no data; this applies even if empty session variables are registered. This differs to the default file-based session save handler, which creates empty session files. The following example provides file based session storage similar to the PHP sessions default save handler files. This example could easily be extended to cover database storage using your favorite PHP supported database engine. =ד 1. session_set_save_handler() example ?php function open ($save_path, $session_name) {global $sess_save_path, $sess_session_name; $sess_save_path = $save_path; $sess_session_name = $session_name; return(true);} function close() {return(true);} function read ($id) {global $sess_save_path, $sess_session_name; $sess_file = "$sess_save_path/sess_$id"; if ($fp = @fopen($sess_file, "r")) {$sess_data = fread($fp, filesize($sess_file)); return($sess_data);} else {return(""); // Must return ""here.}} function write ($id, $sess_data) {global $sess_save_path, $sess_session_name; $sess_file = "$sess_save_path/sess_$id"; if ($fp = @fopen($sess_file, "w")) {return(fwrite($fp, $sess_data));} else {return(false);}} function destroy ($id) {global $sess_save_path, $sess_session_name; $sess_file = "$sess_save_path/sess_$id"; return(@unlink($sess_file));} /********************************************* * WARNING - You will need to implement some * * sort of garbage collection routine here. * *********************************************/ function gc ($maxlifetime) {return true;} session_set_save_handler ("open", "close", "read", "write", "destroy", "gc"); session_start(); // proceed to use sessions normally? See also the session.save_handler configuration directive. º󍋼/A ưµ㼯A session_set_cookie_params ɏһ¼¶ session_start