#21877 [Opn->Ver]: fread may read less bytes than requested even if EOF is not reached ...

From: Date: Tue, 28 Jan 2003 02:29:53 +0000
Subject: #21877 [Opn->Ver]: fread may read less bytes than requested even if EOF is not reached ...
References: 1  Groups: php.doc 
Request: Send a blank email to phpdoc+get-969351357@lists.php.net to get a copy of this message
ID: 21877 Updated by: philip@php.net Reported By: hholzgra@php.net -Status: Open +Status: Verified Bug Type: Documentation problem Operating System: * PHP Version: 4CVS-2003-01-25 (stable) Assigned To: hholzgra New Comment: Try this code instead: $f = fopen("./foo","r"); while (false !== ($c = fgetc($f))) { ... } As this is really what you want to do ;) The documentation for fgetc() really needs to mention this as most others that might encounter this 0==false do (such as readdir). A documention problem is to do the following to the fgetc docs: a) Add an example that keeps in mind false vs 0 b) Implement the &return.falseproblem; entity. Previous Comments: ------------------------------------------------------------------------ [2003-01-27 19:53:30] gaelx@free.fr here was my code: $f=fopen("./foo","r"); while($c=fgetc($f)){ ... } ...and the 'while' loop was quit long before EOF was reached. After examination, it was quit when a character 0 was read (thus confusion between 0 and EOF.......) ------------------------------------------------------------------------ [2003-01-25 13:07:29] hholzgra@php.net ok, it only true for non-blocking php streams ... but still this should be mentioned on the fread() page ------------------------------------------------------------------------ [2003-01-25 12:56:17] hholzgra@php.net i asume this not only true for C fread() but also for PHP ? if so -> should be documented as such ... ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=21877&edit=1

« previous php.doc (#969351357) next »