fflush

(PHP 4 >= 4.0.1, PHP 5)

fflush -- 将缓冲内容输出到文件

说明

bool fflush ( resource handle )

本函数强制将所有缓冲的输出写入 handle 文件句柄所指向的资源。 如果成功则返回 TRUE,失败则返回 FALSE

文件指针必须是有效的,并且必须指向一个由 fopen()fsockopen() 成功打开的文件。


add a note add a note User Contributed Notes
oryan at zareste dot com
31-Oct-2005 08:48
Just a note that fflush takes care of the cache already, at least on my server.  Using clearstatcache before reading a previously written file also worked, but lagged the output time much more noticeably (by two or three seconds), probably due to excess cache erasing beyond files.
jzho327 at cse dot unsw dot edu dot au
27-Jan-2003 04:27
Sorry, the note I previously added regarding fflush() has a bug!

when you read file by calling
$fp = fopen("myfile", "a+");

and you wish to read the content, you have to call
rewind($fp) before you attemp to read it. (Silly me) Or else if you tried something like
$fp = fopen("myfile", "a+");
$content = fread($fp);

// show that content is in fact null
if ($content == NULL)
 print "but it must be first put to rewind<br>\n";

will result

but it must be first put to rewind.
[new line]

in fact, if you are not careful (like me), and you opened it with
$fp = fopen("myfile", "r+");
$content = fread($fp);
..
// do something with content
..
then you tried to again
$content = fread($fp);
without rewind, you'd get NULL again. This sounds trivial, but if you work with several file resources, with freads and fopens everywhere, you can get easily lost. So becareful.