stream_set_write_buffer

(PHP 4 >= 4.3.0, PHP 5)

stream_set_write_bufferSets write file buffering on the given stream

Beskrivelse

int stream_set_write_buffer ( resource $stream , int $buffer )

Sets the buffering for write operations on the given stream to buffer bytes.

Output using fwrite() is normally buffered at 8K. This means that if there are two processes wanting to write to the same output stream (a file), each is paused after 8K of data to allow the other to write.

Parametre

stream

The file pointer.

buffer

The number of bytes to buffer. If buffer is 0 then write operations are unbuffered. This ensures that all writes with fwrite() are completed before other processes are allowed to write to that output stream.

Returnerings Værdier

Returns 0 on success, or EOF if the request cannot be honored.

Eksempler

Eksempel #1 stream_set_write_buffer() example

The following example demonstrates how to use stream_set_write_buffer() to create an unbuffered stream.

<?php
$fp 
fopen($file"w");
if (
$fp) {
  
stream_set_write_buffer($fp0);
  
fwrite($fp$output);
  
fclose($fp);
}
?>

Se også

add a note add a note

User Contributed Notes 1 note

up
1
kevin at bonnevillessei dot com
5 years ago
Trying to use stream_set_write_buffer on a local file will always fail according to this note from 2003.

http://grokbase.com/t/php/php-internals/0351gp6xtn/stream-set-write-buffer-does-not-work

Example:

$fp = fopen("localfile.txt", "w");
if (stream_set_write_buffer($fp, 0) !== 0) {
    // changing the buffering failed is always true on local files
}
To Top