2011-07-25 41 views
6

的時間反正有沒有發現在php目錄的創建時間?我試過filectime但只適用於文件。PHP獲得創建目錄

+8

*(旁註)*'filectime'是Linux上的*更改時間*。它只在Windows上返回創建時間。 – Gordon

回答

6

應該爲目錄工作,這是我所得到的:

$ php -r "echo filectime(__DIR__);" 
1311596297 
+3

謝謝,結果我有不正確的路徑指定的文件夾。 – sumo

4

在UNIX文件夾也是一個文件。因此,它應該也太

$folder = 'includes'; 

echo date ("F d Y H:i:s.", filemtime($folder)); 

輸出工作

October 06 2010 20:20:58. 
3

您可以使用PHP stat function

獲取由filename指定的文件的統計數據。如果filename是一個符號鏈接,則統計信息來自文件本身,而不是符號鏈接。

樣品:

<?php 
    $stat = stat('/your/path'); 
    echo $stat['ctime']; 
?> 

它返回創建時間爲Unix時間戳。

0

if(it does not work) try clearstatcache();filectime功能之前;

0
$filename='dirname'; 
date ("F d Y H:i:s.", filectime($filename)) 

它會工作。

0

試試這個

$filename = 'media/';

echo "$filename was created modified: " . date ("F d Y H:i:s.", filectime($filename));

0

我在Linux服務器上檢測了兩個功能filectime()和filemtime(),他們 正常工作的目錄,也是在這個意義上,他們返回一個時間戳。

於是,我試圖讓一個目錄的最後修改日期,通過FTP將其重命名,然後再檢查它,這裏的所發生的奇怪的事情:

  1. 創建日期時間戳與更新當前時間
  2. 的最後修改日期沒有更新所有

我想這可能是因爲FTP文件操作,而不是通過命令行或系統圖形界面的直接操縱的發生。

在Windows中,創建日期和最後修改日期重命名目錄時不會改變。

對於你的測試,我也建議你看看在clearstatcache()函數的功能(這也是我在我的測試中使用)來清除的文件系統信息的PHP緩存。