簡體   English   中英

PHP - 時間和文件時間問題

[英]PHP - time and filemtime issue

我試圖在PHP中獲取當前時間和filemtime之間的差異。

時間和文件時間似乎返回正確的值,因為當應用於日期函數時,這些值會打印正確的日期。 根據日期函數,time()函數和filemtime之間的差異為1小時。 但是,當我試圖獲取返回的時間戳值之間的差異時,差異為215.例如,請參見下文:

當前時間= 1339599628,日期()功能顯示13-06-2012 16:06:28 00文件修改時間= 1339599413,日期()功能顯示13-06-2012 15:06:30 30

這似乎是正確的,但我看不出如何檢查這些日期之間的秒數差異,因為1小時有3600秒,但差異只有215。

另外,我嘗試了以下時間戳值:1339599599 = 13-06-2012 15:06:59 59 1339599600 = 13-06-2012 16:06:00 00

因此,第一個時間戳值增加1,但日期給出1小時的差異。

有任何想法嗎?

你似乎有時區差異的問題。 試着看看gmdate函數。

或者更好的是,在獲得這些時間戳之前,請調用date_default_timezone_set('UTC')

我有同樣的問題,在我的情況下,time()和filemtime()之間的時差是51秒。 我不知道是什么導致這種情況,但我確實找到了解決方法。 創建touch($file, time())我使用touch($file, time()) 現在,創建文件的創建時間與time()設置為“同步”。

我真的不明白你的問題......時間和文件時間都會返回時間戳。

largestOne - smallestOne = diff,以秒為單位。 它應該沒有更多的東西。

我最近遇到了同樣的問題,在檢查系統端之后,我發現系統時間stat命令提供的顯示上次修改時間的時間之間存在差異。

-bash$ date;touch test;stat test;date
Sat Aug 22 08:06:35 BRT 2015
  File: `test'
  Size: 0               Blocks: 1          IO Block: 32768  regular empty file
Device: 13h/19d Inode: 25189989    Links: 1
Access: (0664/-rw-rw-r--)  Uid: (/)   Gid: (/)
Access: 2015-08-22 08:07:29.968227010 -0300
Modify: 2015-08-22 08:07:29.968227064 -0300
Change: 2015-08-22 08:07:29.968238305 -0300
Sat Aug 22 08:06:35 BRT 2015

我的情況有所不同是53秒。

我測試的其他機器沒有顯示出這種差異。

在主機上測試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM