16
Aug
這個問題起因寫入online.php文件時,在Windows平台下PHP的flock無法正常鎖定文件,所以會有寫入不完整的現象,這應該算Windows平台下PHP的BUG,Linux平台下就不會有這個問題。
今天花了一些時間仔細的查看golbal.php後,我自己想到了一個解決辦法,修改了換日的判別式,就算文件寫入不完整也不會歸零。(當寫入缺少時間值時,程式會以UNIX起始時間戳記算,這也是為什麼歷史統計裡會有19700101紀錄的原因)
修改global.php 第121行
if (gmdate("Ymd", $oldip[2]+$config['timezone']*3600)!=$nowtime['Ymd']) {
修改為
if (gmdate("Ymd", $oldip[2]+$config['timezone']*3600+86400) == $nowtime['Ymd']) {
目前問題解決了,把解決辦法貼在這裡,希望對有同樣困擾的人有幫助。
今天花了一些時間仔細的查看golbal.php後,我自己想到了一個解決辦法,修改了換日的判別式,就算文件寫入不完整也不會歸零。(當寫入缺少時間值時,程式會以UNIX起始時間戳記算,這也是為什麼歷史統計裡會有19700101紀錄的原因)
修改global.php 第121行
if (gmdate("Ymd", $oldip[2]+$config['timezone']*3600)!=$nowtime['Ymd']) {
修改為
if (gmdate("Ymd", $oldip[2]+$config['timezone']*3600+86400) == $nowtime['Ymd']) {
目前問題解決了,把解決辦法貼在這裡,希望對有同樣困擾的人有幫助。
--[*12530*]
希望有相同困擾的版主們能因此受益,
因為今日造訪人數不定時歸零的問題困擾了不少同好,
他老兄為了要解決這個怪現象,可花了不多時間呢