filectime

(PHP 4, PHP 5)

filectimeВозвращает время изменения индексного дескриптора файла

Описание

int filectime ( string $filename )

Возвращает время изменения индексного дескриптора (inode) файла.

Список параметров

filename

Путь к файлу.

Возвращаемые значения

Возвращает время последнего изменения файла, или FALSE в случае возникновения ошибки. Время возвращается в формате временной метки Unix.

Примеры

Пример #1 Пример использования функции filectime()

<?php

// Пример вывода: Файл somefile.txt в последний раз был изменен: December 29 2002 22:16:23.

$filename 'somefile.txt';
if (
file_exists($filename)) {
    echo 
"Файл $filename в последний раз был изменен: " date("F d Y H:i:s."filectime($filename));
}

?>

Ошибки

В случае неудачного завершения работы генерируется ошибка уровня E_WARNING.

Примечания

Замечание:

Примечание. На большинстве платформ Unix, файл считается измененным, если изменены данные его индексного дескриптора, что включает информацию о правах на файл, о его владельце, группе и другие метаданные, содержащиеся в индексном дескрипторе. Обратитесь также к описаниям функций filemtime() (данная функция полезна для создания сообщений типа: "Последнее обновление от..." на web-страницах) и fileatime().

Замечание:

Учтите также, что в некоторых описаниях работы Unix ctime представляется как время создания файла. Это неверно. В большинстве файловых систем Unix понятие времени создания файла отсутствует.

Замечание:

Учтите, что обработка времени может отличаться в различных файловых системах.

Замечание: Результаты этой функции кэшируются. Более подробную информацию смотрите в разделе clearstatcache().

Подсказка

Начиная с PHP 5.0.0, эта функция также может быть использована с некоторыми обертками url. Список оберток, поддерживаемых семейством функций stat(), смотрите в Поддерживаемые протоколы и обработчики (wrappers).

Смотрите также

  • filemtime() - Возвращает время последнего изменения файла

Коментарии

If you use filectime with a symbolic link, you will get the change time of the file actually linked to. To get informations about the link self, use lstat.
2001-09-27 08:01:28
http://php5.kiev.ua/manual/ru/function.filectime.html
This method gets all the files in a directory, and echoes them in the order of the date they were added (by ftp or whatever).

<?PHP
function dirList ($directory$sortOrder){

   
//Get each file and add its details to two arrays
   
$results = array();
   
$handler opendir($directory);
    while (
$file readdir($handler)) { 
        if (
$file != '.' && $file != '..' && $file != "robots.txt" && $file != ".htaccess"){
           
$currentModified filectime($directory."/".$file);
           
$file_names[] = $file;
           
$file_dates[] = $currentModified;
        }   
    }
       
closedir($handler);

   
//Sort the date array by preferred order
   
if ($sortOrder == "newestFirst"){
       
arsort($file_dates);
    }else{
       
asort($file_dates);
    }
   
   
//Match file_names array to file_dates array
   
$file_names_Array array_keys($file_dates);
    foreach (
$file_names_Array as $idx => $name$name=$file_names[$name];
   
$file_dates array_merge($file_dates);
   
   
$i 0;

   
//Loop through dates array and then echo the list
   
foreach ($file_dates as $file_dates){
       
$date $file_dates;
       
$j $file_names_Array[$i];
       
$file $file_names[$j];
       
$i++;
           
        echo 
"File name: $file - Date Added: $date. <br/>"";       
    }

}
?>

I hope this is useful to somebody.
2006-11-15 08:28:49
http://php5.kiev.ua/manual/ru/function.filectime.html
Line 37 of the code above has an error.

echo  "File name: $file - Date Added: $date. <br/>""; 

There is an extra "  after the <br/> that needs to be deleted in order for this code to work.
2007-08-31 13:51:38
http://php5.kiev.ua/manual/ru/function.filectime.html
filectime running on windows reading a file from a samba share, will still show the last modified date.
2007-10-02 12:14:28
http://php5.kiev.ua/manual/ru/function.filectime.html
Filemtime seems to return the date of the EARLIEST modified file inside a folder, so this is a recursive function to return the date of the LAST (most recently) modified file inside a folder.

<?php

// Only take into account those files whose extensions you want to show.
$allowedExtensions = array(
 
'zip',
 
'rar',
 
'pdf',
 
'txt'
);

function 
filemtime_r($path)
{
    global 
$allowedExtensions;
   
    if (!
file_exists($path))
        return 
0;
   
   
$extension end(explode("."$path));     
    if (
is_file($path) && in_array($extension$allowedExtensions))
        return 
filemtime($path);
   
$ret 0;
   
     foreach (
glob($path."/*") as $fn)
     {
        if (
filemtime_r($fn) > $ret)
           
$ret filemtime_r($fn);   
           
// This will return a timestamp, you will have to use date().
     
}
    return 
$ret;   
}

?>
2009-02-03 04:15:13
http://php5.kiev.ua/manual/ru/function.filectime.html
Note that on Windows systems, filectime will show the file creation time, as there is no such thing as "change time" in Windows.
2009-09-05 12:19:09
http://php5.kiev.ua/manual/ru/function.filectime.html
Under Windows you can use fileatime() instead of filectime().
2010-01-06 20:07:37
http://php5.kiev.ua/manual/ru/function.filectime.html
You should avoid feeding the function files without a path. This applies for filemtime() and possibly fileatime() as well. If you omit the path the command will fail with the warning "filectime(): stat failed for filename.php".
2011-01-23 16:42:57
http://php5.kiev.ua/manual/ru/function.filectime.html
If you need file creation time on Mac OS X:

<?php
if ($handle popen('stat -f %B ' escapeshellarg($filename), 'r')) {
   
$btime trim(fread($handle100));
    echo 
strftime("btime: %Y.%m.%d %H:%M:%S\n"$btime);
   
pclose($handle);
}
?>
2015-06-10 18:04:07
http://php5.kiev.ua/manual/ru/function.filectime.html

    Поддержать сайт на родительском проекте КГБ