Correction:
1. distinguer les fonctions du programme principal
2. Eviter trop d'incrustaions HTML/PHP (<?PHP et ?>)
3. Passer les paramètres à la fonction ou utiliser le mot "global"
<?php
//chemins à expolrer
$cheminRep = "0";
$cheminRep0 = "051411_GJ";
$cheminRep1 = "051442_GJ";
$cheminRep2 = "051443_GJ";
$cheminRep3 = "051444_GJ";
$cheminRep4 = "051445_GJ";
$cheminRep5 = "051446_GJ";
//boucle d'explorartion
for ($Num=0;$Num<6;$Num++) {
?>
<p class="Style4"><u>Syllabi GJ</u> </p>
<p>
<?PHP
explorer(${"cheminRep".$Num} , $Num);
?>
</p>
<?PHP
} //fin for
//Fonction d'exploration
function explorer($chemin, $Num) {
$repertoire[$Num]= openDir($chemin);
while ($fichier[$Num] =readDir($repertoire[$Num])) {
if (($fichier[$Num] != ".")&&($fichier[$Num] != "..")) {
$L = strlen($fichier[$Num]);
$langue[$Num] = substr($fichier[$Num], 11, 1);
if ($langue[$Num] == "F") {
$a = "_";
$b = " ";
$supp[$Num] = ereg_replace($a, $b, $fichier[$Num]);
?>
<span class="Style5">
<img src="images/pointblanc.png" />
<a href="051411_GJ/<?PHP echo $fichier[$Num]; ?>"><?PHP echo substr($supp[$Num], 0, $L-4); ?></a>
</span>
<br>
<?PHP
}//fin if
} //fin if
} //fin while
closeDir($repertoire[$Num]);
} //Fin fonction
?>
Mais ce programme peut être simplifié. Par exemple, l
1. a fome tableau n'est pas utile pour les variables $repertoire[$Num], $fichier[$Num], $langue[$Num] et $supp[$Num] qui ne sont jamais réutilisées. Du coup le paramètre $Num n'est plus utile pour la fonction.
2. la forme ${"cheminRep".$Num} est une possibilité de PHP mais en aucun cas une forme standard, elle correspond en effet à la forme standard d'un tableau : Il est donc préférable de la remplacer par une forme comme : $chemins[$num] et de stocker les chemins dans le tableau (array) $chemins.
La boucle for peut être simplifiée en la remplaçant par l'énumérateur foreach, puisqu'on a plus besoin de la variable $Num.
Cette simplification donnerait un truc comme ça:
<?php
//chemins à expolrer
$chemins = array("0","051411_GJ", "051442_GJ", "051443_GJ", "051444_GJ", "051445_GJ", "051446_GJ");
//boucle d'explorartion
if ($chemins && is_array($chemins))
foreach ($chemins as $chemin) {
?>
<p class="Style4"><u>Syllabi GJ</u> </p>
<p>
<?PHP
explorer($chemin);
?>
</p>
<?PHP
} //fin for
//Fonction d'exploration
function explorer($chemin) {
$repertoire= openDir($chemin);
while ($fichier =readDir($repertoire)) {
if ($fichier != "." && $fichier != "..") {
$L = strlen($fichier);
$langue = substr($fichier, 11, 1);
if ($langue == "F") {
$supp = ereg_replace("_", " ", $fichier);
?>
<span class="Style5">
<img src="images/pointblanc.png" />
<a href="051411_GJ/<?PHP echo $fichier; ?>"><?PHP echo substr($supp, 0, $L-4); ?></a>
</span>
<br>
<?PHP
}//fin if
} //fin if
} //fin while
closeDir($repertoire);
} //Fin fonction
?>