php在session_start()后直到关闭页面(或手动关闭session)前对session文件一直处于打开状态。

解决方案 »

  1.   

    我用多个页面测试,$_SESSION同时含值打开,却都能取得,只有当前页的sess_文件取不得,
    比如a.php、b.php、c.php三文件
    a.php能file_get_contents取b.php、c.php的sess_文件,
    b.php能file_get_contents取a.php、c.php的sess_文件,
    c.php能file_get_contents取b.php、a.php的sess_文件,$_SESSION都是打开的啊
      

  2.   

    你用a页打开b页时,b页是关闭的。你可以测试一下。在b页里session_start()后sleep(30)秒。
    然后在30秒内用a页去打开b页的session这时是打不开的。只有b页执行完了后session文件句柄才被释放。
      

  3.   

    如果你要在a页打开自己的session文件,必须先执行session_write_close()