Parcours d'arborescence de fichiers Fonctions  | 
La fonction ~ls_tree() est une fonction de liste permettant de parcourir une arborescence de fichiers.
Son fonctionnement tient à la fois de la fonction ~ls() et de la fonction ~list_tree().
Elle prend six arguments plus les sélecteurs:
- Le répertoire à lister
 - L'expression rationelle de filtrage des répertoires
 - l'expression rationelle de filtrage des fichiers
 - Tri des fichiers en fonction de :  
- "M" : par date
 - "MR" : par date inverse
 - "S" : par chaîne
 - "SR" : par chaîne inverse
 - "N" par ordre numérique
 - "NR" : par ordre numérique inverse
 - "RR": les fichiers sont retournés dans un ordre aléatoire
 
 - Les sélecteurs
 
Les sélecteurs supportés sont: LF, LL, LM, LP, LTB, LTT, LD et L1.
Exemple:
~ls_tree(
"./templeet/modules",
"",
"/a/",
'SDL',
'LF','Mon arbre : <br />',
'LL','<br />',
'LTT','<ul style="background-color: #FF~dechex(255-ls_tree_fld('tdepth')*10*0.5)~dechex(255-ls_tree_fld('tdepth')*10);
border: 1px solid black;
list-style-position: inside;">\n',
'LTB','~ls_tree_fld('totalfile')/~ls_tree_fld('allfile')</ul>',
'LM','<li>~ls_tree_fld('file') ( ~ls_tree_fld('tdepth'), ~ls_tree_fld('counter'), ~ls_tree_fld('tcounter'))',
'LP','</li>\n',
'LD','J\'ai perdu mon chêne, mon alter égo...'
)
Le résultat est:
Mon arbre : 
- array.php ( 0, 1, 1)
 - arraysplit.php ( 0, 2, 2)
 - auth.php ( 0, 3, 3)
 - authedit.php ( 0, 4, 4)
 - authtools.php ( 0, 5, 5)
 - binoperator.php ( 0, 6, 6)
 - cache.php ( 0, 7, 7)
 - fieldfileaccess.php ( 0, 8, 8)
 - filearray.php ( 0, 9, 9)
 - filename.php ( 0, 10, 10)
 - getglobals.php ( 0, 11, 11)
 - image.php ( 0, 12, 12)
 - lang.php ( 0, 13, 13)
 - treewalk.php ( 0, 14, 14)
 - auth ( 0, 15, 15) 
- auth_db.php ( 1, 16, 1)
 - auth_file.php ( 1, 17, 2) 2/3
 
 - lib ( 0, 19, 16) 
- configurator.php ( 1, 20, 1) 1/1
 
 - list ( 0, 22, 17) 
- 
0/4 
 
17/35 
 
La fonction ~ls_tree_fld() prend un argument.
- Le type d'information à renvoyer :
- file : renvoie le nom du fichier complet
 - rfile : renvoie le nom du fichier sans l'extension
 - totalfile : retourne le nombre de fichiers renvoyés par ~ls (ce qui ne correspond pas forcement au nombre de fichiers présent dans le répertoire)
 - allfile : retourne le nombre de fichiers présent dans le répertoire
 - counter : compteur du nombre d'itérations effectuées par ~ls
 - matches : tableau contenant les éléments matchés sur le nom du fichier (voir exemple ci-dessous)
 - atime : date de dernier accès (Unix timestamp)
 - ctime : date de dernier changement d'inode (Unix timestamp)
 - mtime : date de dernière modification (Unix timestamp)
 - blksize : taille de bloc
 - blocks : nombre de blocs alloués
 - dev : volume
 - ino : inode
 - mode : droits d'accès à l'inode
 - nlink : nombre de liens
 - uid : userid du propriétaire
 - gid : groupid du propriétaire
 - rdev : type de volume
 - size : taille en octets
 
 




 

