会话和状态 [英] Sessions and Statefulness
问题描述
如果 PHP 是无状态的,那么即使您将变量声明为静态变量,它们也不会在不同的运行中保留它们的值.那么尝试使用如下类来监控会话是没有意义的,因为会话在运行期间保持状态,但 PHP 用户代码不会.
If PHP is stateless then even if you declare variables as static they do not retain their values across different runs. So is it pointless to try and monitor your sessions using a class such as below as sessions maintain state across runs but PHP user code does not.
class session
{
protected static $ses_id ="";
public static function start()
{
self::$ses_id = session_start();
}
public static function is_start()
{
return self::$ses_id;
}
public static function finish()
{
self::$ses_id = 0;
$_SESSION=array();
if (session_id() != "" || isset($_COOKIE[session_name()]))
{
setcookie(session_name(), '', time()-2592000, '/');
}
session_destroy();
}
}
推荐答案
您编写的类没有添加任何新功能,它只是包装了现有功能(由 session_*
功能).如果您需要调解或控制对会话的访问,这种事情可能是值得的.只有您可以判断在您自己的应用中是否值得.
Your class as you've written it doesn't add any new functionality, it simply wraps existing functionality (provided by the session_*
functions). This kind of thing can be worthwhile if you need to mediate or control access to the session. Only you can judge whether it's worthwhile in your own app.
这篇关于会话和状态的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!