定义和用法
会话或会话处理是一种使数据跨 Web 应用程序的各个页面可用的方法。这session_set_save_handler()函数用于设置 user-level 会话存储函数,您可以使用它来存储和检索与当前会话关联的数据。
用法
session_cache_expire($sessionhandler [,$register_shutdown]);
参数
Sr.No | 参数及说明 |
---|---|
1 |
sessionhandler (Mandatory) 这是实现接口 SessionHandlerInterface 和 SessionIdInterface 的类的对象。 |
2 |
register_shutdown (Optional) 如果为此参数传递值,则 session_write_close() 将注册为 register_shutdown_function() 函数。 |
返回值
此函数返回一个布尔值,成功时为 TRUE,失败时为 FALSE。
PHP版本
这个函数最初是在 PHP 版本 4 中引入的,并且适用于所有后续版本。
例子1
下面的例子演示了session_set_save_handler()函数。
<html>
<head>
<title>Setting up a PHP session</title>
</head>
<body>
<?php
function open($save_path, $session_name){
global $session_path;
$session_path = $save_path;
return(true);
}
function close() {
return(true);
}
function read($id){
global $session_path;
$sess_file = "$session_path/sess_$id";
return (string) @file_get_contents($sess_file);
}
function write($id, $sess_data){
global $session_path;
$sess_file = "$session_path/sess_$id";
if ($fp = @fopen($sess_file, "w")) {
$return = fwrite($fp, $sess_data);
fclose($fp);
return $return;
} else {
return(false);
}
}
function destroy($id){
global $session_path;
$sess_file = "$session_path/sess_$id";
return(@unlink($sess_file));
}
function gc($maxlifetime){
global $session_path;
foreach (glob("$session_path/sess_*") as $filename) {
if (filemtime($filename) + $maxlifetime < time()) {
@unlink($filename);
}
}
return true;
}
$res = session_set_save_handler("open", "close", "read", "write", "destroy", "gc");
if($res){
print("Successful");
}else{
print("A problem occurred");
}
session_start();
?>
</body>
</html>
执行上述 html 文件将显示以下消息。
Successful
相关用法
- PHP session_set_cookie_params()用法及代码示例
- PHP session_start()用法及代码示例
- PHP session_status()用法及代码示例
- PHP session_save_path()用法及代码示例
- PHP session_gc()用法及代码示例
- PHP session_regenerate_id()用法及代码示例
- PHP session_destroy()用法及代码示例
- PHP session_reset()用法及代码示例
- PHP session_unset() vs session_destroy()用法及代码示例
- PHP session_register_shutdown()用法及代码示例
- PHP session_id()用法及代码示例
- PHP session_commit()用法及代码示例
- PHP session_name()用法及代码示例
- PHP session_abort()用法及代码示例
- PHP session_decode()用法及代码示例
- PHP session_write_close()用法及代码示例
- PHP session_unset()用法及代码示例
- PHP session_encode()用法及代码示例
- PHP session_get_cookie_params()用法及代码示例
- PHP session_cache_limiter()用法及代码示例
注:本文由纯净天空筛选整理自 PHP - session_set_save_handler() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。