2017-07-07 2 views
0

Ici j'ai trouvé une solution merveilleuse pour changer de manière récursive l'encodage des fichiers d'un dossier Randomseed solutionconvertir des fichiers enconding récursive

$path = realpath('C:\\your\\path'); 

$iterator = new RecursiveIteratorIterator(
    new RecursiveDirectoryIterator($path), 
    RecursiveIteratorIterator::SELF_FIRST 
); 

foreach($iterator as $fileName => $file){ 
    if($file->isFile()) 
     file_put_contents(
      $fileName, 
      iconv('ISO-8859-7', 'UTF-8', file_get_contents($fileName)) 
     ); 
} 

Mais il y a un problème. Chaque fichier est modifié, même les images, et ils ne sont pas affichés plus tard. Comment éditer ceci pour ne changer que les fichiers .php par exemple?

Merci beaucoup!

Répondre

0

Si vous voulez seulement boucler sur des fichiers .php, il suffit de regarder l'extension du fichier.

foreach($iterator as $fileName => $file){ 
    if($file->isFile() && $file->getExtension() == "php") 
     file_put_contents(
      $fileName, 
      iconv('ISO-8859-7', 'UTF-8', file_get_contents($fileName)) 
     ); 
    } 
+0

Travaillé parfaitement. Merci beaucoup. – Betty