php static 变量和数据库类的单例模式。

在学php的时候,自己弄糊涂了,向大家求证:
1、static变量,是类变量,被所有实例共享吗?
比如在一个class中,声明一个static int i,并执行++操作,现在开了十个客户端(在不同用户那里实例化10次),每个客户端都在前一个客户端的执行结果上再执行++操作吗?
asp.net是这样子的(类似application而不似session),不知道php是不是也是这样?

2、如果上面为真,那么数据库连接采用单例模式,岂不是所有客户端共用一个连接对象?如果没有关闭的话不是有问题?这里我迷惑了。

如果上面不为真,那么使用单例模式又共享了什么呢?

谢谢。

php中的变量(非Session)的最大作用域就是一次请求,每次请求都会重新初始化static变量。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-07-28
第一个问题 static 是说静态变量。当你子程序结束时,子程序中的静态变量是不回被注销的。但是当主程序结束后这个变量还是会注销的。
第2个回答  2011-07-28
你做的是在线人数统计?
不可以这样的,建议你使用数据库+session实现

相关了解……

你可能感兴趣的内容

大家正在搜

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网