在同一个域名和同一浏览器下,同时使用session_start()时,假设先打开的页面没有处理完,后面的页面要一直等到前一个页面执行完才会处理。
我有两个页面 a.php,b.php
a.php 代码如下:
<?php
session_start();sleep(30);echo $_SESSION["uid"];
?>b.php 代码如下:
<?php
session_start();
echo $_SESSION["uid"];
?>session 在其他页面已经存在;效果是 b页面的sesion_start() 一直等待;请问是什么原因呢?如果我想在b.php中获取session值,应该怎么写呢?
我有两个页面 a.php,b.php
a.php 代码如下:
<?php
session_start();sleep(30);echo $_SESSION["uid"];
?>b.php 代码如下:
<?php
session_start();
echo $_SESSION["uid"];
?>session 在其他页面已经存在;效果是 b页面的sesion_start() 一直等待;请问是什么原因呢?如果我想在b.php中获取session值,应该怎么写呢?
用两个浏览器可以。
就是一个页面在等待的时候, 其他页面不能使用session;上面是个例子:现实中是 A页面发出请求等待数据返回,B页面需要获取SESSION ,但是不行;请问如何在B页面中怎么样获取SESSION;
在 file 模式下的 session,每个sessionid 对应一个文件
执行 session_start() 时,对应的文件以独占方式打开,直至程序运行结束或显式的关闭 session 时才释放
php 的这个做法本身并没有错,session 临时文件本身就属于单个浏览器。同时还可以防止临时文件被系统其它进程破坏