Bonjour tout le monde,

J'ai une liste de fichiers pdf nommés de 1.pdf à 1000.pdf, et j'ai des fichiers html (1.html à 1000.html) qui contiennent les noms correspondant.
J'ai utilisé le code suivant pour extraire les titres:

Code que je test sur 10 fichiers :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
   //Extraction du texte à partir d'un fichier HTML et renommer un fichier dans un répertoire
   $num_fichier = 10;
   for ($j=1;$j<=$num_fichier;$j++){
      $ligne=32;
      $titre='';
      $fichier='../ressources/'.$j.'.html';
      $fp=fopen($fichier,'r');
      if ($fp){
         for ($i=1;$i<=$ligne;$i++) {
            $Temporaire = fgets($fp);
            if (empty($Temporaire)){
               break;
            }else {
               $Contenu = $Temporaire;
            }
         }
      }
      fclose($fp);
      $titre = $Contenu;
      //Test d'affichage du titre sur le navigateur
      //echo $titre;
      rename('../ressources/'.$j.'.pdf', '../ressources/'.$titre.'.pdf');
   }
Le code fonctionne bien. Lorsque j'affiche les titres sur mon navigateur ils s'affiche en Arabe, mais lorsque je les utilisent pour renommer les fichiers pdf ils s'affiche sur Windows bizarrement.

L'encodage de mon serveur Apach : ISO-8859-1

Mon IDE est en UTF-8

J'ai utilisé les fonction mb_detect_encoding($titre) et iconv("UTF-8", "Windows-1256//IGNORE (ou TRANSLIT)", $titre).

Cependant, je soupçonne le output de mon serveur Apach que je n'arrive pas à changer en windows-1256 ou cp1256, car la fonction mb_internal_encoding() ne les prends pas comme paramètre (cf mb_list_encodings())

Y at-il qqn qui peut m'aider à résoudre ce problème avp?