Code php : 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
25
26
27
28
29
30
31
32
 
// Retourne des fichiers aléatoirement
function tri_aleatoire($chemin) {
    // Création du tableau qui va contenir les fichiers et dossiers
    $fichiers = array();
 
    // Quoiqu'il arrive on transpose le chemin fournit en un chemin absolu "passe-partout"
    $chemin = realpath($chemin) . DIRECTORY_SEPARATOR;
 
	// Si le dossier existe 
    if (is_dir($chemin)) {
 
        // Ouverture du répertoire courant
        $handle = opendir($chemin);
 
        // Parcours des fichiers et dossiers du répertoire courant
        while (($f = readdir($handle)) !== FALSE) {
            if ($f != '.' && $f != '..' && $f != '.DS_Store') {
                array_push($fichiers, $f);
            }
        }
 
        // Fermeture du répertoire courant
        closedir($handle);
 
        // Tri du tableau
        srand((float)microtime() * 1000000);
        shuffle($fichiers);
 
    }
    return $fichiers;
}
J'utilise cette fonction pour lister des fichiers dans un dossier, cette fois-ci je ne souhaite afficher que 3 résultats, j'ai donc pensé rajouter une ligne à la fin de la fonction :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
array_slice($fichiers, 0, 3, TRUE);

pour extraire uniquement 3 fichiers.

Mais il continue de m'afficher tous les fichiers, une idée de ce qui ne vas pas ou de la manière de s'y prendre en utilisant cette fonction ?

Merci d'avance