PHP会话控制之如何正确设置session_name定义:string session_name([string $name])说明:

在php.ini中配置为:session.name = PHPSESSID在请求开始的时候,会话名称会被重置并存储到session.name配置项。所以要想在不改变php.ini配置文件的情况下,更改session_name 必须要在 session_start()或session_register()之前设置session_name。代码演示:

[ 先启动会话,再设置session_name]

<?php/*** 深入理解PHP会话控制* User: gutops*///启动新会话session_start();//设置session_namesession_name('PHPSESSID_NEW');echo session_name(); //输出为PHPSESSID_NEW

这样sesssion_name并未改变,查看浏览器cookies name为PHPSESSID(php.ini中默认设置的session.name)

[ 先设置session_name 再启动会话(正确的修改方式)]

<?php/** * 深入理解PHP会话控制 * User: gutops */session_name('PHPSESSID_NEW');session_start();echo session_name(); //输出为PHPSESSID_NEW

查看浏览器cookies,可以看到name变为PHPSESSID_NEW