Forums Rue-Montgallet.com
Rue-Montgallet.comRue-Hardware.comRue-Occasion.comRue-DVD.comRue-Jeuxvideo.comRue-AudioVideo.comRue-Telephone.comForums
S'inscrire | S'identifier |
| Recherche avancée | Aide
 
 

pseudo7594 Achat - Vente Informatique : clemzz Achat - Vente Divers : aurelien, rahasiyam et 21 utilisateurs inconnus

 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet :

[PHP] Encodage de caractères sous DOS

 
n°7425
Baziel
Profil : Membre
Posté le 13-04-2004 à 13:15:35  profilanswer
 

Bonjour,
 
J'utilise EasyPHP soux windows.  
Quand je lance une commande du type :  
echo `dir c:`;
 
le "é" sont remplacés par des virgules, etc.
 
Comment faire pour avoir les vrais noms de fichiers, par exemple "Vidéo" et pas "Vid,eo" ?

n°7426
Nodashi
Silence je dors
Profil : Dinosaure
Posté le 13-04-2004 à 13:20:43  profilanswer
 

il faut remplacer les caracteres speciaux.
 
htmlentities()   ;)


---------------
informatique / jeu vidéo / blog du développeur / Pour les hommes modernes
n°7431
Baziel
Profil : Membre
Posté le 13-04-2004 à 14:15:13  profilanswer
 

Je ne crois pas que mon problème soit là : ce n'est pas à l'affichage que, par exemple,  les "é" deviennent des "," c'est en retour de l'appel à la commande DOS. ("preuve", si je stocke dans un fixhier, j'ai aussi les "," et pas les "é" )
Pour moi c'est parce que le DOS rends une chaine de caractères encodés avecun format dont je ne connais pas le nom, et qu'il faudrait que j'encode autrement..


Message édité par Baziel le 13-04-2004 à 14:16:01
n°7433
ollone
Part of the 'One brothers
Profil : Vieux de la vieille
Posté le 13-04-2004 à 15:36:02  profilanswer
 

Je pense que tu ne peux pas influer sur le retour d'une commande DOS... qui je le rappelle fonctionne en 16 bits (y'a pas de caractères accentués à ce niveau).
Peut-être peux-tu reproduire ta commande DOS en PHP, si c'est un simple parcours de répertoires/Listing de fichiers, tu peux le faire aisément en PHP et envolé ton problème sera :)
 

Code :
  1. // Ouverture du répertoire ciblé.
  2. if (!($dp=opendir($currep))) die("> Impossible d'ouvrir le répertoire $currep!" );
  3. // On traite le contenu du répertoire.
  4. while (false !== ($nomfichier=readdir($dp))) {
  5.   if ($nomfichier!="." && $nomfichier!=".." ) {
  6.    // Répertoire détecté.
  7. if (is_dir($currep.$nomfichier)) {
  8.  $repertoires[$dircounter]["name"] = $nomfichier;
  9.  $repertoires[$dircounter]["type"] = "dir";
  10.  $repertoires[$dircounter]["createdate"]=ereg_replace(" "," ",date("d/m/Y  H:i:s",fileatime($currep.$nomfichier)));
  11.  $repertoires[$dircounter]["modifdate"]=filemtime($currep.$nomfichier);
  12.  $dircounter++;
  13. }
  14. // Fichier détecté.
  15. else {
  16.  $fichiers[$filecounter]["name"] = $nomfichier;
  17.  $fichiers[$filecounter]["type"] = "file";
  18.  $extension = substr($nomfichier, -(strlen($nomfichier)-strrpos($nomfichier,"." )));
  19.  $fichiers[$filecounter]["extension"]=$extension;
  20.  $fichiers[$filecounter]["size"]=filesize($currep.$nomfichier);
  21.  $fichiers[$filecounter]["createdate"]=ereg_replace(" "," ",date("d/m/Y  H:i:s",fileatime($racine.$currep.$nomfichier)));
  22.  $fichiers[$filecounter]["modifdate"]=filemtime($currep.$nomfichier);
  23.  $filecounter++;
  24. }
  25.   }
  26. }
  27. // On ferme le répertoire.
  28. closedir($dp);


Message édité par ollone le 13-04-2004 à 15:39:19

---------------
C'est naturel que les filles soient plus belles, et les garçons plus cons ^^ [un peu bonobo sur les bords]

Aller à :
Ajouter une réponse