是的,多人并发存取文件记录是一个大问题.
PHP提供了函数flock,不过在windows下似乎没有作用.

解决方案 »

  1.   

    像ASP一样用内存来放这个文件。
    但ASP直接支持
    而PHP没直接支持的,
    看看PHP的内存共享文章!
      

  2.   

    多谢楼上各位的指点!  尤其是 LeeMaRS(小菜虎_水壶的仇人) 
    我不想用数据库记录信息, 我先去试试 flock(), 呵,不知道有这个函数
    看了说明, 我想应该可以解决问题!!  
    再次感谢, 试了再来结帖!
      

  3.   

    新新建议用数据库,虽然大材小用
    但是mysql可以锁定,就不会出现混乱
    要不然你试试这样
    count.txt
    内容:
    35|0
    35代表人数;
    0代表是否正在纪录
    不好意思,我在实习,没有机子,55555
      

  4.   

    谢了,新新, 那你的意思是设一个标识文件, 0/1代表信号量!
    可你还是得读写 count.txt ,  难道它本身就不会出现并发存取问题??我试过使用flock函数, 效果不错! 到目前为此,没有出现过存取异常为空的
    情况, 当然,稳定程度还有待考证!!不过, 再次感谢楼上各位, 先结帖放分!!
      

  5.   

    谢了,新新, 你的意思我懂了! 设一个标识文件, 0/1为共享信息量! 每次更新
    在线记录文件, 先访问标识文件! 可那还得存取count.txt 啊, 能保证它本身不出问题吗?  呵.....我试了LeeMaRS(小菜虎_水壶的仇人)的方法, 用flock, 效果不错, 到目前为此还没有出现存取异常!! 不过稳定性还有待时间考验!再次感谢楼上各位, 先结贴!