某个php页面在同一时间只能由一个用户执行,其它用户排队,有办法吗? - PHP进阶讨论

某个php页面在同一时间只能由一个用户执行,其它用户排队,有办法吗? - PHP进阶讨论,第1张

可以用session_set_save_handler(open,close,read,write,destory,gc)解决:先通过一个变量标志此页面是否有用户在执行,当用户请求这个页面的时间,就打开Session,在Open方法中查看标志,如果有用户在执行的话就关闭这个Session,并在close方法中,重新打开一个Session,如果一个用户执行完这个页面的话,就毁掉这个Session,在destory方法中把标志字段设为可用,就这样实现排队,他没有时间控制器,只有等程序超时了!,还有一点标志段要放在一个文件或数据库中,这样才能使整个应用程序共享(可惜PHP没有Asp.net中的Application变量:

php __get方法:

这个方法用来获取私有成员属性值的,有一个参数,参数传入你要获取的成员属性的名称,返回获取的属性值,这个方法不用手工的去调用,因为也可以把这个方法做成私有的方法,是在直接获取私有属性的时候对象自动调用的。

因为私有属性已经被封装上了,是不能直接获取值的,但是如果你在类里面加上了这个方法,在使用“echo$p1->name”这样的语句直接获取值的时候就会自动调用__get($name)方法,将属性name传给参数$name,通过这个方法的内部执行,返回传入的私有属性的值。

如果成员属性不封装成私有的,对象本身就不会去自动调用这个方法。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/247995.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-13
下一篇2023-04-13

发表评论

登录后才能评论

评论列表(0条)

    保存