Alm*_* Do 17
我不建议你开始会话只是为了获得一些独特的ID.相反,使用这样的东西,uniqid()因为它旨在返回唯一ID.
但是,如果您已经有会话,那么当然session_id()要用来获取会话ID - 但不要依赖它,因为"unique id"与常规意义上的"session id"不同:例如,多个标签在大多数浏览器中将使用相同的进程,因此,在结果中使用相同的会话标识符 - 因此,不同的连接将具有相同的ID.这是您对所需行为的决定,我之前提到这只是为了显示会话ID和唯一ID之间的区别.
在获取会话ID之前,您需要启动会话,这可以通过使用:session_start()函数来完成.
现在您已经启动了一个会话,您可以使用:session_id()获取会话ID.
/* A small piece of code for setting, displaying and destroying session in PHP */
<?php
session_start();
$r=session_id();
/* SOME PIECE OF CODE TO AUTHENTICATE THE USER, MOSTLY SQL QUERY... */
/* now registering a session for an authenticated user */
$_SESSION['username']=$username;
/* now displaying the session id..... */
echo "the session id id: ".$r;
echo " and the session has been registered for: ".$_SESSION['username'];
/* now destroying the session id */
if(isset($_SESSION['username']))
{
$_SESSION=array();
unset($_SESSION);
session_destroy();
echo "session destroyed...";
}
?>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
159183 次 |
| 最近记录: |