Ce forum est maintenant fermé, seule cette archive statique reste consultable.
  FORUM Rue-Montgallet.com
  Programmation
  Php - Sql

  [PHP] Encodage de caractères sous DOS

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  
 

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" ?

mood
Pub
Posté le 13-04-2004 à 13:15:35  
 

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

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


---------------
informatique / jeu vidéo
n°7431
Baziel
Profil : Membre
Posté le 13-04-2004 à 14:15:13  
 

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  
 

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]
  FORUM Rue-Montgallet.com
  Programmation
  Php - Sql

  [PHP] Encodage de caractères sous DOS

© 2000-2024 Forum.rue-montgallet.com - Tous droits réservés