一套php开发的程序,站点配置文件写入了config.php里面。其他文件每次是include站点的配置文件。
出现一种问题,每次修改配置文件后,config.php文件实时生效,但php文件include进config.php之后,对应的数组内容还不是最新的。最后的结果就是修改了站点配置文件,但是看到的还是没有修改前的配置。
客户反映,需要退出浏览器、清除缓存、清除历史记录在登录才能看到修改的内容。(此处好像不是这里的问题)
经过分析,发现直接include进config.php文件,仍然有类似问题,所以可以排除客户浏览器、网络运营商缓存等可能原因。
国外有提到过类似问题的,发现其中提到了opcache,于是在代码中每次引用配置文件之前,opcache_reset清除opcache缓存。再次执行,确认问题已经消失。
参考文章:
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。