Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3054 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [php] Probleme d'espace (le caractere) [Résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[php] Probleme d'espace (le caractere) [Résolu]

n°725631
hop le fou
Tu m'en diras tant
Posté le 14-05-2004 à 10:51:18  profilanswer
 

Bonjour,
j'ai un problème en php lors de la lecture d'un fichier.
J'utilise la fonction File (qui me lit donc mes infos ligne par ligne)
Le probleme est que un caractere espace est rajouté à la fin de ce qui est réellement écrit dans le fichier (pas d'espace dans le fichier évidemment, juste un saut de ligne)
Le fichier devrait être généré automatiquement mais la c moi qui l'ai écrit pour les tests (je précise que je suis sous windows).
 
Il semblerait que la fonction file interprete le saut de ligne comme un espace et un saut de ligne...
 

Code :
  1. $res_lect = file($nom_fichier);
  2. $max = count($res_lect);
  3. for ($i = 0; $i < $max; $i++)
  4. {echo $res_lect[$i];}


 
Y a t il un moyen d'éviter ces espaces?
 
Merci


Message édité par hop le fou le 14-05-2004 à 14:17:52
mood
Publicité
Posté le 14-05-2004 à 10:51:18  profilanswer
 

n°725645
jagstang
Pa Capona ಠ_ಠ
Posté le 14-05-2004 à 10:58:30  profilanswer
 

je crois que c'est un bug connu de la fonction sous Windows. essaie d'utiliser  
 
http://php.net/fopen
http://php.net/fgets
http://php.net/fclose
 

Code :
  1. <?php
  2.   $fd = fopen ("/tmp/inputfile.txt", "r" );
  3.   while (!feof ($fd)) {
  4.    $buffer = fgets($fd, 4096);
  5.    echo $buffer;
  6.   }
  7.   fclose ($fd);
  8. ?>


Message édité par jagstang le 14-05-2004 à 10:59:20
n°725651
Mara's dad
Yes I can !
Posté le 14-05-2004 à 11:01:33  profilanswer
 

Sous windows, un fichier contenant un saut de ligne contient 2 caractères : 0x13 (CR ou \r) et 0x10 (LF ou \n)
 
Comme indiqué dans la doc de la fonction file(), cette dernière inclue les sauts de lignes dans les cellules du tableau.
 
D'autre part, un saut de ligne est interpreté comme un espace en HTML
 
Donc pour enlever les saut de lignes, faire comme indiqué dans la doc, utilises rtrim().

n°726057
hop le fou
Tu m'en diras tant
Posté le 14-05-2004 à 14:17:39  profilanswer
 

J'ai changé de fonction et je n'ai pas mis de saut de ligne
Donc maintenant ca marche.
Merci


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [php] Probleme d'espace (le caractere) [Résolu]

 

Sujets relatifs
[Access] Remplir les champs des formulaires en Access [Résolu]Comment insérer un caractère dans 9000 cellules contenant un nombre
[ASP.NET] Problème pour accéder à une variable Session[java] probleme de newbie (tri de tableau)
probleme de confirmation[php] Upload fichier [Résolu]
[RESOLU] PHP / langue[XHTML / CSS] problème d'alignement horizontal [Résolu]
[CSS] espace vertical 
Plus de sujets relatifs à : [php] Probleme d'espace (le caractere) [Résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR