fwrite

(PHP 4, PHP 5)

fwrite�crit un fichier en mode binaire

Description

int fwrite ( resource $handle , string $string [, int $length ] )

fwrite() �crit le contenu de la cha�ne string dans le fichier point� par handle .

Liste de param�tres

handle

Un pointeur de syst�me de fichiers de type resource qui est habituellement cr�� en utilisant la fonction fopen().

string

La cha�ne � �crire.

length

Si la longueur length est fournie, l'�criture s'arr�tera apr�s length octets, ou � la fin de la cha�ne (le premier des deux).

Notez que si length est fourni, alors l'option de configuration magic_quotes_runtime sera ignor�e, et les slash seront conserv�s.

Valeurs de retour

fwrite() retourne le nombre d'octets �crits, ou FALSE si une erreur survient.

Notes

Note: Le fait d'�crire dans un flux peut se termine avant que la cha�ne compl�te ne soit �crite. La valeur retourn�e par la fonction fwrite() peut �tre v�rifi�e comme ceci :

<?php
function fwrite_stream($fp$string) {
    for (
$written 0$written strlen($string); $written += $fwrite) {
        
$fwrite fwrite($fpsubstr($string$written));
        if (!
$fwrite) {
            return 
$fwrite;
        }
    }
    return 
$written;
}
?>


Note: Sur les syst�mes qui font la diff�rence entre les fichiers binaires et les fichiers textes (par exemple, Windows), le fichier doit �tre ouvert avec l'option 'b' inclus dans le param�tre de mode de fopen().

Note: Si handle est ouvert en mode ajout (append), fwrite() sera atomique (sauf si la taille de string exc�de la taille du bloc du syst�me de fichiers, sur quelques plates-formes, et tant que le fichier se trouve sur le syst�me de fichiers local). Ainsi, il n'est pas n�cessaire d'utiliser la fonction flock() sur une ressource avant d'appeler la fonction fwrite() ; toutes les donn�es seront �crites sans interruption.

Note: Si l'on �crit 2 fois dans le fichier, les donn�es seront ajout�es � la fin du fichier ; cela signifie que l'exemple suivant ne donnera pas le r�sultat attendu :

<?php
$fp 
fopen('data.txt''w');
fwrite($fp'1');
fwrite($fp'23');
fclose($fp);

// le contenu de 'data.txt' est maintenant 123 et non 23 !
?>


Exemples

Exemple #1 Exemple avec fwrite()

<?php
$filename 
'test.txt';
$somecontent "Ajout de cha�ne dans le fichier\n";

// Assurons nous que le fichier est accessible en �criture
if (is_writable($filename)) {

    
// Dans notre exemple, nous ouvrons le fichier $filename en mode d'ajout
    // Le pointeur de fichier est plac� � la fin du fichier
    // c'est l� que $somecontent sera plac�
    
if (!$handle fopen($filename'a')) {
         echo 
"Impossible d'ouvrir le fichier ($filename)";
         exit;
    }

    
// Ecrivons quelque chose dans notre fichier.
    
if (fwrite($handle$somecontent) === FALSE) {
        echo 
"Impossible d'�crire dans le fichier ($filename)";
        exit;
    }

    echo 
"L'�criture de ($somecontent) dans le fichier ($filename) a r�ussi";

    
fclose($handle);

} else {
    echo 
"Le fichier $filename n'est pas accessible en �criture.";
}
?>

Voir aussi

  • fread() - Lecture du fichier en mode binaire
  • fopen() - Ouvre un fichier ou une URL
  • fsockopen() - Ouvre une socket de connexion Internet ou Unix
  • popen() - Cr�e un processus de pointeur de fichier
  • file_get_contents() - Lit tout un fichier dans une cha�ne