File: stream-set-write-buffer.xml

package info (click to toggle)
php-doc 20081024-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 57,752 kB
  • ctags: 3,858
  • sloc: xml: 686,554; php: 19,446; perl: 610; cpp: 500; makefile: 336; sh: 114; awk: 28
file content (80 lines) | stat: -rw-r--r-- 2,496 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.6 $ -->
<!-- splitted from ./en/functions/filesystem.xml, last change in rev 1.2 -->
<refentry xml:id="function.stream-set-write-buffer" xmlns="http://docbook.org/ns/docbook">
 <refnamediv>
  <refname>stream_set_write_buffer</refname>
  <refpurpose>Sets file buffering on the given stream</refpurpose>
 </refnamediv>
 <refsect1>
  <title>Description</title>
  <methodsynopsis>
   <type>int</type><methodname>stream_set_write_buffer</methodname>
   <methodparam><type>resource</type><parameter>stream</parameter></methodparam>
   <methodparam><type>int</type><parameter>buffer</parameter></methodparam>
  </methodsynopsis>
  <simpara>
   Output using <function>fwrite</function> 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.
   <function>stream_set_write_buffer</function>
   sets the buffering for write operations on the given filepointer
   <parameter>stream</parameter> to <parameter>buffer</parameter> bytes.
   If <parameter>buffer</parameter> is 0 then write operations are
   unbuffered.  This ensures that all writes with
   <function>fwrite</function> are completed before other processes
   are allowed to write to that output stream.
  </simpara>
  <simpara>
   The function returns 0 on success, or EOF if the request cannot
   be honored.
  </simpara>
  <para>
   The following example demonstrates how to use
   <function>stream_set_write_buffer</function> to create an unbuffered stream.
   <example>
    <title><function>stream_set_write_buffer</function> example</title>
    <programlisting role="php">
<![CDATA[
<?php
$fp = fopen($file, "w");
if ($fp) {
  stream_set_write_buffer($fp, 0);
  fwrite($fp, $output);
  fclose($fp);
}
?>
]]>
    </programlisting>
   </example>
  </para>

  <simpara>
   See also
   <function>fopen</function> and
   <function>fwrite</function>.
  </simpara>
 </refsect1>
</refentry>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->