fwrite

Scrittura su file binary-safe

fwrite(resource $stream, string $data, $length)

fwrite scrive il contenuto di data nello stream del file puntato da stream.

stream Fs file pointer data La stringa che deve essere scritta. length Se l'argomento length è un Integer, la scrittura si arresterà dopo aver scritto length byte o alla fine di data a seconda di quale dei due eventi si verifica prima.

fwrite restituisce il numero di byte scritti, Return falseforfailure.

fwrite genera un E_WARNING in caso di errore.

VersionDescription8.0.0 Ora è nullable. length

Un esempio semplice di fwrite <?php $filename = 'test.txt'; $somecontent = "Aggiungi questo al file\n"; // Assicuriamoci prima che il file esista e sia scrivibile. if (is_writable($filename)) { // Nel nostro esempio stiamo aprendo $filename in modalità append. // Il puntatore del file si trova in fondo al file, quindi // è lì che $somecontent verrà scritto quando lo scriviamo con fwrite(). if (!$fp = fopen($filename, 'a')) { echo "Impossibile aprire il file ($filename)"; exit; } // Scriviamo $somecontent nel nostro file aperto. if (fwrite($fp, $somecontent) === FALSE) { echo "Impossibile scrivere nel file ($filename)"; exit; } echo "Successo, scritto ($somecontent) nel file ($filename)"; fclose($fp); } else { echo "Il file $filename non è scrivibile"; } ?>

Nota: Scrivere su uno stream di rete potrebbe terminare prima che l'intera stringa sia scritta. Il valore restituito da fwrite potrebbe essere verificato: <?php function fwrite_stream($fp, $string) { for ($written = 0; $written < strlen($string); $written += $fwrite) { $fwrite = fwrite($fp, substr($string, $written)); if ($fwrite === false) { return $written; } } return $written; } ?>
Nota: Su sistemi che differenziano tra file binari e di testo (ad esempio Windows), il file deve essere aperto con 'b' incluso nel parametro di modalità di fopen.
Nota: Se stream è stato aperto in modalità append tramite fopen, le scritture con fwrite sono atomiche (a meno che la dimensione di data non superi la dimensione del blocco del filesystem, su alcune piattaforme, e purché il file sia su un filesystem locale). Cioè, non c'è bisogno di usare flock prima di chiamare fwrite; tutti i dati saranno scritti senza interruzione.
Nota: Se si scrive due volte sul puntatore del file, i dati verranno aggiunti alla fine del contenuto del file: <?php $fp = fopen('data.txt', 'w'); fwrite($fp, '1'); fwrite($fp, '23'); fclose($fp); // il contenuto di 'data.txt' è ora 123 e non 23! ?>

fread fopen fsockopen popen file_get_contents pack