• php session_id()函数介绍及代码实例


    session_id()功能:

    获取设置当前回话ID。

    函数说明:

    string session_id ([ string $id ] )

    参数:

    如果指定了参数$id,那么函数会替换当前的回话id. session_id()函数必须在session_start()函数之前调用.

    返回值:

      session_id返回当前会话id字符串。如果当前没有产生会话,则返回空字符串"".

    代码示例1:

    输出 session_id()

    1
    2
    3
    4
    <?php
        session_start();
        echo session_id(); 
    ?>

    设置 session_id()

    1
    2
    3
    4
    5
    <?php
        session_id("NowaMagic");
        session_start();
        echo session_id();
    ?>

    代码示例2:

    用户会话保存变量

    1.php文件

    1
    2
    3
    4
    <?php
    session_start();
    $_SESSION["str"]="我是中国人!!!";
    ?>

    2.php文件

    1
    2
    3
    4
    <?php
    session_start();
    echo $_SESSION["str"];
    ?>

    先执行1.php,再执行2.php,会看到在1.php里面设置的变量被输出了,会话用来保存跨页面的变量。

    php中的session_id函数恢复session的内容方法

      php的session是可以程序恢复的,这个和java不太一样。session的恢复机制可以实现多个应用程序session的共享,因为php的session都是以文件形式或者数据库存储的。首先是session_id的获取是通过session_id()函数获取,这个值可以进行传递。程序恢复session,首先要知道session_id,大家通过手册可以知道session的恢复通过session_id($id);但是在恢复时要注意一个先后顺序,要得到之前session的内容,必须在session_start()之前执行session_id($id),这样才能在执行了session_start时初始化session的时候恢复到之前的内容,否则的话你得到的是一个空的session,你什么也得不到。之前session被重新初始化了。这个和session_start()的作用有密切关系,因为session_start告诉php,session要初始化,要从session文件中反序列化session内容,所以session_start的作用就是把之前存储的文件内容反序列化。session_start序列化之前要知道session_id,如果没有就生成一个新的session_id。如果有就反序列化相应文件的内容。

  • 相关阅读:
    SuperSocket中的Server是如何初Start的
    SuperSocket中的Server是如何初Initialize的
    Explicit Interface Implementation (C# Programming Guide)
    Interfaces (C# Programming Guide)
    Java泛型Restletclient
    jQuery 完成ajax传jsonObject数据,并在后台处理
    SDUT 2933-人活着系列Streetlights(最小生成树Kruskal+和理查德设置来实现)
    华为OJ:查找字符的第一个字符串只出现一次
    Linux查找多个类似,但不同的名称和重命名文件
    【Java收集的源代码分析】Hashtable源代码分析
  • 原文地址:https://www.cnblogs.com/besty/p/3911413.html
Copyright © 2020-2023  润新知