Filesystem 函数
在线手册:中文 英文
PHP手册

fstat

(PHP 4, PHP 5)

fstat通过已打开的文件指针取得文件信息

说明

array fstat ( resource $handle )

获取由文件指针 handle 所打开文件的统计信息。本函数和 stat() 函数相似,除了它是作用于已打开的文件指针而不是文件名。

返回一个数组具有该文件的统计信息,该数组的格式详细说明于手册中 stat() 页面里。

Example #1 fstat() 例子

<?php

// 打开文件
$fp fopen("/etc/passwd""r");

// 取得统计信息
$fstat fstat($fp);

// 关闭文件
fclose($fp);

// 只显示关联数组部分
print_r(array_slice($fstat13));

?>

以上例程的输出类似于:

Array
(
    [dev] => 771
    [ino] => 488704
    [mode] => 33188
    [nlink] => 1
    [uid] => 0
    [gid] => 0
    [rdev] => 0
    [size] => 1114
    [atime] => 1061067181
    [mtime] => 1056136526
    [ctime] => 1056136526
    [blksize] => 4096
    [blocks] => 8
)

Note: 此函数不能作用于远程文件,被检查的文件必须是可通过服务器的文件系统访问的。

参数

handle

文件系统指针,是典型地由 fopen() 创建的 resource(资源)。

返回值

Returns an array with the statistics of the file; the format of the array is described in detail on the stat() manual page.

范例

Example #2 fstat() example

<?php

// open a file
$fp fopen("/etc/passwd""r");

// gather statistics
$fstat fstat($fp);

// close the file
fclose($fp);

// print only the associative part
print_r(array_slice($fstat13));

?>

以上例程的输出类似于:

Array
(
    [dev] => 771
    [ino] => 488704
    [mode] => 33188
    [nlink] => 1
    [uid] => 0
    [gid] => 0
    [rdev] => 0
    [size] => 1114
    [atime] => 1061067181
    [mtime] => 1056136526
    [ctime] => 1056136526
    [blksize] => 4096
    [blocks] => 8
)

注释

Note: 此函数不能作用于远程文件,被检查的文件必须是可通过服务器的文件系统访问的。


Filesystem 函数
在线手册:中文 英文
PHP手册
PHP手册 - N: 通过已打开的文件指针取得文件信息

用户评论:

broom at alturnanetworks dot com (03-Oct-2008 11:21)

Another ftp_get_contents() approach, using a temperary stream handler. Returns file contents of remote file as string.

<?php
function ftp_get_contents ($conn_id, $remote_filename) {
   
//Create temp handler:
   
$tempHandle = fopen('php://temp', 'r+');

   
//Get file from FTP assuming that it exists:
   
ftp_fget($conn_id, $tempHandle, $remote_filename, FTP_ASCII, 0));

   
//Getting detailed stats to check filesize:
   
$fstats = fstat($tempHandle);

    return
fread($tempHandle, $fstats['size']);
}
?>

(It is recommended to add some error handling)

sheran at comtrust dot co dot ae (22-Feb-2001 01:14)

On Windows NT the typical array element names for the fstat function are:

dev
ino
mode
nlink
uid
gid
size
atime
mtime
ctime