如题所述
一般来说,PHP是作为网站脚本语言进行运行的,也就是客户端请求服务器网关后,由CGI程序调用PHP来解析代码并执行,然后将执行结果发送给用户。一般是这种模式。
上面这种模式意味着,没有用户请求,就不会执行PHP代码,也就无法“定时提醒”。
要实现“定时提醒”功能,就要保证让PHP一直处于运行状态(当然,通过操作系统去设置定时任务也行,但是那就与PHP无关了)(或者,将脚本超时时间去掉,然后让PHP代码进入一个“死循环”,不过这种方式非常不好,不建议)。
网上有一些比较成熟的框架,比如我比较喜欢的workerman,你可以将PHP程序做成一个守护进程服务,这样就能保持PHP一直处于运行状态,到时间了,就自动调用一个函数执行一段代码就行,一般是通过Websocket通知用户(如果目标用户浏览器允许使用HTML5的话)。
上面这种模式意味着,没有用户请求,就不会执行PHP代码,也就无法“定时提醒”。
要实现“定时提醒”功能,就要保证让PHP一直处于运行状态(当然,通过操作系统去设置定时任务也行,但是那就与PHP无关了)(或者,将脚本超时时间去掉,然后让PHP代码进入一个“死循环”,不过这种方式非常不好,不建议)。
网上有一些比较成熟的框架,比如我比较喜欢的workerman,你可以将PHP程序做成一个守护进程服务,这样就能保持PHP一直处于运行状态,到时间了,就自动调用一个函数执行一段代码就行,一般是通过Websocket通知用户(如果目标用户浏览器允许使用HTML5的话)。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2018-09-23
linux服务器吗?如果提醒是按固定时间出现,可以用crontab来做定时器,定时执行wget来访问外部域名或者用php命令来运行本地php文件即可。如果你的提醒是希望给予不能预测时间的事件,比如某个用户触发了某个bug,或者某个用户遇到了严重错误需要紧急处理,可以用喵提醒这种机遇事件驱动的提醒服务。