Comment marche fopen() ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Comment marche fopen() ?

par TiFred » 11 sept. 2008, 13:29

En effet, c'est très bien

Merci

par TiFred » 10 sept. 2008, 13:43

Sans fopen :
$nouvelles_données = "Bla bla";
$données_existantes = file_get_contents("mon_fichier.txt");
file_put_contents("mon_fichier.txt", $nouvelles_données . $données_existantes);
Merci je vais tester ça
ça semble beaucoup plus simple en plus

par sadeq » 09 sept. 2008, 16:16

Sans fopen :
$nouvelles_données = "Bla bla";
$données_existantes = file_get_contents("mon_fichier.txt");
file_put_contents("mon_fichier.txt", $nouvelles_données . $données_existantes);

par TiFred » 09 sept. 2008, 16:09

C'est bien l'impression que j'avais

mais alors à quoi servent w+ et r+ ?

Re: Comment marche fopen() ?

par caroube » 09 sept. 2008, 15:34

Comment faire pour écrire au début du fichier en gardant ce qui y est déjà ?
On ne peut pas. Du moins automatiquement.
Il faut donc que tu lises tes données dans le fichier en mémoire (fopen, fread), que tu génères le fichier à réécrire en mettant les données dans le bon ordre et que tu récrives l'ensemble des données (fopen, fwrite).

par _activmik » 09 sept. 2008, 14:23

w+ : Ouvre en lecture et écriture ; place le pointeur de fichier au début du fichier et réduit la taille du fichier à 0. Si le fichier n'existe pas, il tente de le créer.

r+ : Ouvre en lecture et écriture, et place le pointeur de fichier au début du fichier.

Comment marche fopen() ?

par TiFred » 09 sept. 2008, 14:11

Salut,

Il semblerait qu'avec l'option w+ ou r+, les données se mettent à la place des autres (et non au début)
Alors qu'avec a+, cela se rajoute après !

Comment faire pour écrire au début du fichier en gardant ce qui y est déjà ?
Merci