SunshinePHP Developer Conference 2015

fstat

(PHP 4, PHP 5)

fstatLê informações sobre um arquivo usando um ponteiro de arquivo aberto

Descrição

array fstat ( resource $handle )

Obtêm estatísticas do arquivo aberto pelo ponteiro de arquivos handle. Esta função é similar à função stat() exceto que ela opera em um ponteiro de arquivo aberto ao invés de um nome de arquivo.

Parâmetros

handle

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

Valor Retornado

Retorna um array com as estatísticas de um arquivo. O formato do array é descrito em detalhes na página do manual sobre stat().

Exemplos

Exemplo #1 Exemplo fstat()

<?php

// abre um arquivo
$fp fopen("/etc/passwd""r");

// colhe as estatísticas
$fstat fstat($fp);

// fecha o arquivo
fclose($fp);

// imprime somente a parte de índices associativos
print_r(array_slice($fstat13));

?>

O exemplo acima irá imprimir algo similar à:

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
)

Notas

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

add a note add a note

User Contributed Notes 1 note

up
1
broom at alturnanetworks dot com
6 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)
To Top