ID:               27792
 Comment by:       eric dot gewirtz at solutiononecdi dot com
 Reported By:      kode at kodekrash dot com
 Status:           Assigned
 Bug Type:         Filesystem function related
 Operating System: * (LFS)
 PHP Version:      6CVS, *CVS
 Assigned To:      wez
 New Comment:

I was having issues with fopen() and files > 2g. This is now working
for me in 5.2.0-7. I also tested the filesize() function with 5.2.0-7
and it still has an issue because it returns an int and the file size >
2g blows but the error message is gone but it is clearly documented in
the online manual.
The following is from the manual;
Note: Because PHP's integer type is signed and many platforms use 32bit
integers, filesize() may return unexpected results for files which are
larger than 2GB. For files between 2GB and 4GB in size this can usually
be overcome by using sprintf("%u", filesize($file)).


Previous Comments:
------------------------------------------------------------------------

[2006-09-12 13:24:39] sorry at example dot com

function is_dir_LFS($path){
  return (('d'==substr(exec("ls -dl '$path'"),0,1))?(true):(false));
}

------------------------------------------------------------------------

[2006-09-12 13:08:47] sorry at example dot com

A workaround for this is:

$filesize=exec("ls -l '$yourfile' | awk '{print $5}'");

------------------------------------------------------------------------

[2006-07-24 13:17:03] caluml at gmail dot com

Don't forget that PHP is not used exclusively on websites.

I use the CLI version for other uses, and this <2GB limit is starting
to make that rather awkward.

Getting the filesystem functions working with large files would be very
useful.

------------------------------------------------------------------------

[2005-10-24 21:16:03] hendersj at mindspring dot com

I have seen problems related to this both over NFS and using a local
NSS filesystem with Novell Open Enterprise Server (Linux kernel, SLES 9
is where the package orginates).  The problem I have seen is more
accurately described in bug 33872, which was flagged as a duplicate of
this bug.

Bug 33872 describes a condition where readdir() returns only the
entries "." and ".." (in my case just "." is returned) regardless of
the permissions to the directory.  The same code run against a reiserFS
partition works just fine.

I am running php 4.3.4; I have also seen it with PHP 4.2.2 when using
an NFS server that has 64-bit cookie values.

------------------------------------------------------------------------

[2005-10-19 12:01:16] php at wiels dot nl

I have the same problems on a windows 2003 server with php version
4.3.11 and filesystem ntfs.
Where file size is 3781778927, filesize() gives -513188369.

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/27792

-- 
Edit this bug report at http://bugs.php.net/?id=27792&edit=1

Reply via email to