GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Downloads
  • Documentation
  • Get Involved
  • Help
  • Getting Started
  • Introduction
  • A simple tutorial
  • Language Reference
  • Basic syntax
  • Types
  • Variables
  • Constants
  • Expressions
  • Operators

This view

  • Original page
  • New address

GeezerVison is showing www.php.net — PHP: fstat - Manual

PHP 8.6.0 RC5 available for testing
    fsync »
    « fseek
    • Preface
    • Function Reference
    • File System Related Extensions
    • Filesystem
    • Filesystem Functions

    fstat

    (PHP 4, PHP 5, PHP 7, PHP 8)

    fstat — Gets information about a file using an open file pointer

    Description

    function fstat(resource $stream): array|false

    Gathers the statistics of the file opened by the file pointer stream. This function is similar to the stat() function except that it operates on an open file pointer instead of a filename.

    Parameters

    stream

    A file system pointer resource that is typically created using fopen().

    Return Values

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

    Examples

    Example #1 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($fstat, 13));
    
    ?>

    The above example will output something similar to:

    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
    )

    Notes

    Note:

    This function will not work on remote files as the file to be examined must be accessible via the server's filesystem.

    Found A Problem?

    Learn How To Improve This Page • Submit a Pull Request • Report a Bug
    +add a note

    User Contributed Notes 2 notes

    up
    down
    2
    broom at alturnanetworks dot com ¶
    18 years ago
    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)
    up
    down
    0
    tom at bitworks dot de ¶
    9 years ago
    Remember atime will not be updated by simple read access to the file unless you take care for that in the mounting parameters of your filesystem.  
    
    Instead of atime, mtime will be delivered. But mtime only will be updated, if the contents of the file has changed.
    
    Due to this behavior take care in your Session-System. Using session_start() will not be sufficiant to keep your sessions alive. You should write into the Session, e. g. :  
    
    $_SESSION = time();  
    
    That retriggers your mtime and atime, even if the mounting parameter for atime is set to "noatime" or is missing, dependent of the used file System.
    +add a note
    • Filesystem Functions
      • basename
      • chgrp
      • chmod
      • chown
      • clearstatcache
      • copy
      • delete
      • dirname
      • disk_​free_​space
      • disk_​total_​space
      • diskfreespace
      • fclose
      • fdatasync
      • feof
      • fflush
      • fgetc
      • fgetcsv
      • fgets
      • fgetss
      • file
      • file_​exists
      • file_​get_​contents
      • file_​put_​contents
      • fileatime
      • filectime
      • filegroup
      • fileinode
      • filemtime
      • fileowner
      • fileperms
      • filesize
      • filetype
      • flock
      • fnmatch
      • fopen
      • fpassthru
      • fputcsv
      • fputs
      • fread
      • fscanf
      • fseek
      • fstat
      • fsync
      • ftell
      • ftruncate
      • fwrite
      • glob
      • is_​dir
      • is_​executable
      • is_​file
      • is_​link
      • is_​readable
      • is_​uploaded_​file
      • is_​writable
      • is_​writeable
      • lchgrp
      • lchown
      • link
      • linkinfo
      • lstat
      • mkdir
      • move_​uploaded_​file
      • parse_​ini_​file
      • parse_​ini_​string
      • pathinfo
      • pclose
      • popen
      • readfile
      • readlink
      • realpath
      • realpath_​cache_​get
      • realpath_​cache_​size
      • rename
      • rewind
      • rmdir
      • set_​file_​buffer
      • stat
      • symlink
      • tempnam
      • tmpfile
      • touch
      • umask
      • unlink
    You are visitor 01402503 — GeezerVison does not store the pages you look up.
    Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.