• 技术文章 >后端开发 >PHP问题

    php中session_start()是什么意思

    青灯夜游青灯夜游2022-03-07 11:09:25原创161

    在php中,session_start()的意思为“开始会话”,是一个用于创建新会话或者重用现有会话的内置函数;语法为“session_start($array);”,成功开始会话返回true,反之返回false。

    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

    在php中,session_start()的意思为“开始会话”。

    语法:

    session_start(array $options = array()): bool

    session_start()函数会创建新会话或者重用现有会话。如果通过 GET 或者 POST 方式,或者使用 cookie 提交了会话 ID, 则会重用现有会话。

    参数:

    当会话自动开始或者通过 session_start() 手动开始的时候, PHP 内部会调用会话管理器的 open 和 read 回调函数。 会话管理器可能是 PHP 默认的, 也可能是扩展提供的(SQLite 或者 Memcached 扩展), 也可能是通过 session_set_save_handler() 设定的用户自定义会话管理器。 通过 read 回调函数返回的现有会话数据(使用特殊的序列化格式存储), PHP 会自动反序列化数据并且填充 $_SESSION 超级全局变量。

    要想使用命名会话,请在调用 session_start() 函数 之前调用 session_name() 函数。

    如果启用了 session.use_trans_sid 选项, session_start() 函数会注册一个内部输出管理器, 该输出管理器完成 URL 重写的工作。

    如果用户联合使用 ob_start() 和 ob_gzhandler 函数, 那么函数的调用顺序会影响输出结果。 例如,必须在开始会话之前调用 ob_gzhandler 函数完成注册。

    示例1:

    <?php
    // page1.php
    
    session_start();
    
    echo 'Welcome to page #1';
    
    $_SESSION['favcolor'] = 'green';
    $_SESSION['animal']   = 'cat';
    $_SESSION['time']     = time();
    
    // 如果使用 cookie 方式传送会话 ID
    echo '<br /><a href="page2.php">page 2</a>';
    
    // 如果不是使用 cookie 方式传送会话 ID,则使用 URL 改写的方式传送会话 ID
    echo '<br /><a href="page2.php?' . SID . '">page 2</a>';
    ?>

    请求 page1.php 页面之后, 第二个页面 page2.php 会包含会话数据。 请查阅 会话参考 获取更多关于 会话 ID 传送的信息, 在该参考页面中有关于常量 SID 的详细说明。

    示例2:覆盖 Cookie 超时时间设定

    <?php
    // 设置 cookie 的有效时间为 1 天
    session_start([
        'cookie_lifetime' => 86400,
    ]);
    ?>

    推荐学习:《PHP视频教程

    以上就是php中session_start()是什么意思的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php session_start()
    上一篇:php里的empty是什么意思 下一篇:php中语言结构和函数有什么区别
    PHP编程就业班

    相关文章推荐

    • php怎么将int(整数)类型转为小数• php在变量前后各加一个点是什么意思• php中@file_exists前面加的at“@”是什么意思• php构造方法和java构造方法有什么区别• 深入了解怎么优化php+php-fom+nginx配置参数• PHP社区拒绝在俄乌冲突中“站队”!

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网