La lecture et écriture de fichier (fopen)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 10 594 fois - Téléchargée 28 fois

Contenu du snippet

Un petit tutorial qui explique comment utiliser fopen et ses fonctions.

Source / Exemple :


La fonction fopen s'écrit comme ceci: $variable = fopen("fichier","mode")
On peut bien évidement utiliser des variables mais vous devez supprimer les guillmets. Pour le paramètre fichier, c'est le chemin du fichier. Le deuxième est le mode. Il y a sixe modes:
r qui ouvre en lecture seul le fichier
r+ qui ouvre en lecture et écriture le fichier
w qui ouvre le fichier en lecture seul et on se place au début. Si le fichier n'existe pas il est créé.
w+ qui ouvre le fichier en lecture et écriture et on se place au début. Si le fichier n'existe pas il est créé.
a ouvre le fichier en  lecture et on se place à la fin. Si le fichier n'existe pas il est créé.
a+ ouvre le fichier en lecture et écriture et on se place au début. Si le fichier n'existe pas il est créé.

Ensuite, il y a l'option chmode qui permet de changer le chmod d'un fichier.  La fonction est simple : chmod("fichier ou dossier", mode);

Il y a l'opition filesize qui permet de vérifier la grosseur d'un fichier. Vous n'avez qu'à faire $var = filesize("fichier");

Il y a fread qui lit un fichier. L'utilisation est $var = fread(var du fopen,longeur)
le var du fopen dans l'exemple était $fd et pour avoir la longeur d'un fichier, vous pouvez mettre au lieu filesize("fichier")

Pour se déplacer dans un fichier, il faut utiliser fseek. Voici comment on l'utilise: fseek(var du fopen, debut, fin). Vous remplacez debut et fin par la place que vous voulez commencer et finir. Vous pouvez utiliser SEEK_END pour avoir la fin du fichier et SEEK_SET pour le début.

Il y a le fputs (pareil que fwrite) pour écrire dans un fichier. Voici comment qu'on l'utilise: fputs(var du fopen, "texte", longeur). Notez que la longeur est opitionel, si elle n'est pas spécifier la chaine sera écrite au complet.

Dernièrement, il y a la commande fclose pour fermer un fichier. Voici comment on l'écrit: fclose(var du fopen).

Voici maintenant un exemple qui démontre bien le fopen:

<?
$fichier = "compteur.ini";
$fd = fopen($fichier,"w+");
fseek($fd,0,SEEK_END);
$contenu = fread($fd,filesize($fichier));
if ($contenu=="")
{
$contenu = 1;
}
else
{
$contenu++;
}
fseek($fd,0,SEEK_SET);
fputs($fd, $contenu,filesize($fichier)+1);
fclose($fd);
?>

Conclusion :


Il se peut qu'il aille des erreurs il est tard et j'ai hâte de me coucher.

A+,
SmallToad - Grand maitre PHP

A voir également

Ajouter un commentaire

Commentaires

Messages postés
33
Date d'inscription
jeudi 17 août 2006
Statut
Membre
Dernière intervention
1 juin 2007

non compris pour debutant.
Messages postés
1237
Date d'inscription
samedi 8 novembre 2003
Statut
Membre
Dernière intervention
3 septembre 2006
15
Pour le retour à la ligne, certains font:
$Chaine .= "\n";

Perso, sous Windows, j'aime bien faire:
$Chaine .= chr(13).chr(10);
Messages postés
1732
Date d'inscription
jeudi 17 juin 2004
Statut
Membre
Dernière intervention
9 mars 2015
2
Si par hasard quelqu'un sait comment inséré un fichier htm dans un fichier zip avec une méthode comme sa je le prendrai volontier
merci
Messages postés
9
Date d'inscription
lundi 17 mai 2004
Statut
Membre
Dernière intervention
26 mai 2004

bonjour / bonsoir.

coment faire un passage a la ligne dans le fichier texte ?
Messages postés
6
Date d'inscription
vendredi 3 mai 2002
Statut
Membre
Dernière intervention
8 novembre 2004

sa ma aidé beaucoup je te remercie
freedom
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.