fwrite
(PHP 4, PHP 5)
fwrite — Binary-safe file write
Description
int fwrite
( resource $handle
, string $string
[, int $length
] )
fwrite() writes the contents of
string
to the file stream pointed to by
handle
.
Parameters
-
handle
-
A file system pointer resource
that is typically created using fopen().
-
string
-
The string that is to be written.
-
length
-
If the length
argument is given, writing will
stop after length
bytes have been written or
the end of string
is reached, whichever comes
first.
Note that if the length
argument is given,
then the magic_quotes_runtime
configuration option will be ignored and no slashes will be
stripped from string
.
Return Values
fwrite() returns the number of bytes
written, or FALSE on error.
Notes
Note:
On systems which differentiate between binary and text files
(i.e. Windows) the file must be opened with 'b' included in
fopen() mode parameter.
Note:
If handle
was fopen()ed in
append mode, fwrite()s are atomic (unless the size of
string
exceeds the filesystem's block size, on some
platforms, and as long as the file is on a local filesystem). That is,
there is no need to flock() a resource before calling
fwrite(); all of the data will be written without
interruption.
Note:
If writing twice to the file pointer, then the data will be appended to
the end of the file content, meaning that the example below wouldn't work
as expected:
<?php
$fp = fopen('data.txt', 'w');
fwrite($fp, '1');
fwrite($fp, '23');
fclose($fp);
?>
Examples
Example #1 A simple fwrite() example
<?php
$filename = 'test.txt';
$somecontent = "Add this to the file\n";
if (is_writable($filename)) {
if (!$handle = fopen($filename, 'a')) {
echo "Cannot open file ($filename)";
exit;
}
if (fwrite($handle, $somecontent) === FALSE) {
echo "Cannot write to file ($filename)";
exit;
}
echo "Success, wrote ($somecontent) to file ($filename)";
fclose($handle);
} else {
echo "The file $filename is not writable";
}
?>