Your \SplFileObject will not throw an exception when trying to write to a non-writeable stream!
I forgot to set the second parameter on my \SplFileObject constructor (the mode), costing me minutes to figure out why nothing was written by the fwrite method...SplFileObject::fwrite
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
SplFileObject::fwrite — Write to file
Description
Writes the contents of data to the file
Parameters
data-
The string to be written to the file.
length-
If the
lengthargument is int, writing will stop afterlengthbytes have been written or the end ofdatais reached, whichever comes first.
Return Values
Returns the number of bytes written, or false on error.
Changelog
| Version | Description |
|---|---|
| 8.5.0 |
length is now nullable.
|
| 7.4.0 |
The function now returns false instead of zero on failure.
|
Examples
Example #1 SplFileObject::fwrite() example
<?php
$file = new SplFileObject("fwrite.txt", "w");
$written = $file->fwrite("12345");
echo "Wrote $written bytes to file";
?>The above example will output something similar to:
Wrote 5 bytes to file
+add a note
User Contributed Notes 1 note
bas dot hilbers at tribal-im dot com ¶
12 years ago