PHP x86 Como obter um tamanho de arquivo de> 2 GB sem programa extern
Preciso obter o tamanho de um arquivo com mais de 2 GB. (testando em arquivo de 4,6 GB). Existe alguma maneira de fazer isso sem um programa externo?
Status atual
filesize()
, stat()
efseek()
falhafread()
efeof()
trabalhExiste a possibilidade de obter o tamanho do arquivo lendo o conteúdo do arquivo (extremamente lento!
$size = (float) 0;
$chunksize = 1024 * 1024;
while (!feof($fp)) {
fread($fp, $chunksize);
$size += (float) $chunksize;
}
return $size;
Eu sei como obtê-lo em plataformas de 64 bits (usandofseek($fp, 0, SEEK_END)
eftell()
), mas preciso de solução para a plataforma de 32 bit
Solução Comecei o projeto de código aberto para isso.
Big Ferramentas de arquivo@Big File Tools é uma coleção de hacks necessários para manipular arquivos com mais de 2 GB em PHP (mesmo em sistemas de 32 bits
responda:https: //stackoverflow.com/a/35233556/63136github:https: //github.com/jkuchar/BigFileTool