php ne veut pas écraser mon fichier

Un bon endroit pour poser ses questions sur Linux, BSD, Smoothwall, ...

Modérateurs : watch, Barbapapa

php ne veut pas écraser mon fichier

Message par cdl » 07 Août 2014 18:06

Bonjour à tous,

Je possède un fichier a qui est utilisé pour différentes applications. Je dois utiliser des informations de a pour une nouvelle application. Le problème, c'est que a est trop lourd. Je décide donc de créer un fichier b avec le contenu minimum nécessaire pour cette nouvelle application.

Le soucis est que le fichier ne se renouvelle pas. En revanche, si il n'existe pas il est bien créé.
Voici le script (je vous épargne les opérations pour changer la structure):
Code : Tout sélectionner
<?php
   //Fichier allègé
   $newfile = "b.txt";
   $fp = fopen($newfile, "w+");
   //Fichier brut
   $fichier = "../a.txt";
   $lines = file($fichier);
   //Traite chaque ligne et crée le nouveau fichier selon notre format
   foreach ($lines as $line_num => $line) {
      $chain = "blabla";
      fwrite($fp, $chain."\n");
      echo $chain."<br />\n";
   }
   chmod($newfile, "0644");
   fclose($fp);
?>
cdl
Acharné
Acharné
 
Message(s) : 2331
Inscription : 21 Nov 2009 13:27
Localisation : 1370

Re: php ne veut pas écraser mon fichier

Message par psyko » 08 Août 2014 09:00

Pourquoi tu l'efface pas avec un unlink avec de le re-créer?
psyko
Dix mille
Dix mille
 
Message(s) : 14302
Inscription : 21 Nov 2002 16:40
Localisation : Entre ici et là bas

Re: php ne veut pas écraser mon fichier

Message par Damien » 08 Août 2014 17:54

Le problème vient du chmod. Tu dois enlever les guillemets: le mode est censé être un entier, pas une chaîne de caractère. En l'état, il ne donne pas les permissions de lecture au propriétaire, ce qui pose un problème vu que tu ouvres le fichier en w+.

Donc

Code : Tout sélectionner
   chmod($newfile, 0644);


PS: active les warnings et notices :wink: (pas en prod bien sûr)
πάντα δὲ δοκιμάζετε, τὸ καλὸν κατέχετε
Damien
Acharné
Acharné
 
Message(s) : 4511
Inscription : 04 Août 2005 19:42

Re: php ne veut pas écraser mon fichier

Message par cdl » 09 Août 2014 10:43

Rah... bien vu.
Merci.
cdl
Acharné
Acharné
 
Message(s) : 2331
Inscription : 21 Nov 2009 13:27
Localisation : 1370


Retour vers Unix

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit