如题小弟想做查看用户是否在线
 比如说当用户登陆服务器的时候 php会保存一个$G_USERNAME的session (session_register(G_USERNAME);)
那我能获取服务器所有session 的个数吗 和session 保存的每个$G_USERNAME的值 
有办法吗?
求高手帮忙看下 谢谢了

解决方案 »

  1.   

    理论上是没有办法的.
    session一般以文件形式保存在服务器上,
    但服务器并不能准确的清除session文件,有时候需要手工清除session文件.如果你能每次及时释放$G_USERNAME的session,这个值就会被清空.这样的话,你可以读取保存session的目录,正则取出这个值,如果存在,表明还在存活,但是这样理论上也不是特准确的.
      

  2.   

        相当于不同用户共享数据,每个人上线 下线的时候 都把这个共享的数据更新一下!
    不同用户之间共享数据:
         1. 你可以放在内存里,用 memcached 这样的东西(必须)存在内存里,php是运行后,马上释放资源,退出内存,所以必须用第三方的工具或是插件
         2. 保存在硬盘上 ,写数据库 ,或者写文件,保存在硬盘上