파일시스템 함수 목록
PHP Manual

stat

(PHP 4, PHP 5)

statGives information about a file

설명

array stat ( string $filename )

Gathers the statistics of the file named by filename . If filename is a symbolic link, statistics are from the file itself, not the symlink.

lstat() is identical to stat() except it would instead be based off the symlinks status.

인수

filename

Path to the file.

반환값

stat() and fstat() result format
Numeric Associative (since PHP 4.0.6) Description
0 dev device number
1 ino inode number *
2 mode inode protection mode
3 nlink number of links
4 uid userid of owner *
5 gid groupid of owner *
6 rdev device type, if inode device
7 size size in bytes
8 atime time of last access (Unix timestamp)
9 mtime time of last modification (Unix timestamp)
10 ctime time of last inode change (Unix timestamp)
11 blksize blocksize of filesystem IO **
12 blocks number of blocks allocated **

* On Windows this will always be 0.

** Only valid on systems supporting the st_blksize type - other systems (e.g. Windows) return -1.

In case of error, stat() returns FALSE.

오류/예외

Upon failure, an E_WARNING is emitted.

변경점

버전 설명
4.0.6 In addition to returning these attributes in a numeric array, they can be accessed with associative indices, as noted next to each parameter

예제

Example #1 stat() example

<?php
/* Get file stat */
$stat stat('C:\php\php.exe');

/*
 * Print file access file, this is the same 
 * as calling fileatime()
 */
echo 'Access time: ' $stat['atime'];

/*
 * Print file modification time, this is the 
 * same as calling filemtime()
 */
echo 'Modification time: ' $stat['mtime'];

/* Print the device number */
echo 'Device number: ' $stat['dev'];

Example #2 Using stat() information together with touch()

<?php
/* Get file stat */
$stat = @stat('C:\php\php.exe');

/* Did we failed to get stat information ? */
if(!$stat)
{
    echo 
'Stat call failed...';
}
else
{
    
/*
     * We want the access time to be 1 week 
     * before the current access time.
     */
    
$atime $stat['atime'] + 604800;

    
/* Touch the file */
    
if(!@touch('some_file.txt'time(), $atime))
    {
        echo 
'Failed to touch file...';
    }
    else
    {
        echo 
'Touch returned success...';
    }
}
?>

주의

Note: 시간 정밀도는 각각 파일 시스템에 따라 다를 수 있습니다.

Note: 이 함수의 결과는 캐시에 저장합니다. 자세한 설명은 clearstatcache()를 참고하십시오.

Tip

PHP 5.0.0부터 이 함수는 몇몇 URL 래퍼를 사용할 수 있습니다. 기능적으로 stat() 패밀리를 지원하는 래퍼 목록은 지원 프로토콜/래퍼 목록를 참고하십시오.

참고


파일시스템 함수 목록
PHP Manual