PHP | stat 函数

Lasted 2021-01-20 10:56:48

stat 函数获取文件的信息。

stat() 函数获取由 filename 指定的文件的统计信息。如果 filename 是符号连接,则统计信息是关于被连接文件本身的,而不是符号连接。lstat() 和 stat() 相同,只除了它会返回符号连接的状态。

函数定义

stat ( string $filename ) : array
// 源文件位于:ext/standard/link.c
# 函数定义

FileFunction(PHP_FN(stat), FS_LSTAT)

参数

  • checkfilename - 文件或符号链接的路径。

返回值

  • checkarray - 成功则返回数组:
    • 0::dev device number - 设备名。
    • 1::ino inode number - inode 号码。
    • 2::mode inode protection mode - inode 保护模式。
    • 3::nlink number of links - 被连接数目。
    • 4::uid userid of owner - 所有者的用户 id。
    • 5::gid groupid of owner- 所有者的组 id。
    • 6::rdev device type, if inode device * - 设备类型,如果是 inode 设备的话。
    • 7::size size in bytes - 文件大小的字节数。
    • 8::atime time of last access (unix timestamp) - 上次访问时间(Unix 时间戳)。
    • 9::mtime time of last modification (unix timestamp) - 上次修改时间(Unix 时间戳)。
    • 10::ctime time of last change (unix timestamp) - 上次改变时间(Unix 时间戳)。
    • 11::blksize blocksize of filesystem IO * - 文件系统 IO 的块大小。
    • 12::blocks number of blocks allocated - 所占据块的数目。

示例1: - 使用 stat() 函数获取文件的信息。

<?php
/**
 * PHP stat() 函数获取文件的信息
 *
 * @since Version 1.0.0
 * @filesource
 */

// 获取文件信息
$stat = stat('foo.txt');

print_r($stat);
Array
(
    [0] => 2064
    [1] => 1289856
    [2] => 33279
    [3] => 1
    [4] => 1000
    [5] => 1000
    [6] => 0
    [7] => 18
    [8] => 1611106298
    [9] => 1611105905
    [10] => 1611105905
    [11] => 4096
    [12] => 8
    [dev] => 2064
    [ino] => 1289856
    [mode] => 33279
    [nlink] => 1
    [uid] => 1000
    [gid] => 1000
    [rdev] => 0
    [size] => 18
    [atime] => 1611106298
    [mtime] => 1611105905
    [ctime] => 1611105905
    [blksize] => 4096
    [blocks] => 8
)