templeet
pix
corner_top pix


Liste des fichiers d'un répertoire
Fonctions
ls

La fonction ~ls() est une fonction de liste.

Elle prend six arguments plus les sélecteurs:

  • Le répertoire à lister
  • Le regexp des fichiers (ex: "/\.txt$/i")
  • Le type de fichiers à lister : file ou dir
  • 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
  • Indice (à partir du n ième fichier)
  • Nombre de fichiers à afficher et/ou traiter.
  • Les sélecteurs

Les sélecteurs supportés sont: LF, LM, LR, LL, LN, LD,L1 et LS.

Exemple :

~ls( "/mon/repertoire", "/\.txt$/i", "file", "NR", "0", "10",
"LF",
"Voici le nom des 10 derniers fichiers .txt de mon répertoire /mon/repertoire",
"LM",
"~ls_fld("file") <br />"
)

ls_fld

La fonction ~ls_fld() prend trois arguments.

  • 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, si le volume est *
    • size : taille en octets
  • le niveau d'imbrication (optionnel, 0 par défaut)
  • la valeur par défaut à renvoyer si la valeur est vide

 

Exemple :

~ls( "templeet/modules/", "/^(.*i).*\.php$/i", "file", "S", "0", ,
"LF",
<![LF[Voici la liste des fichiers .php contenant la lettre "i" dans leur nom avec une extraction de la chaîne précédente:
]LF]>,
"LM",
"~ls_fld("file"):~string(
     {
        matches=ls_fld("matches");
        matches[1];
      })
"
)

Le résultat est:

 

Voici la liste des fichiers .php contenant la lettre "i" dans leur nom avec une extraction de la chaîne précédente:
arraysplit.php:arrayspli
authedit.php:authedi
binoperator.php:bi
fieldfileaccess.php:fieldfi
filearray.php:fi
filename.php:fi
filesystem.php:fi
image.php:i
ip.php:i
lines.php:li
list.php:li
list_tree.php:li
redirect.php:redi
time.php:ti
xhtmlize.php:xhtmli

 

Dans un souci d'hamonisation le champs 'count' en Templeet 3.5 devient 'counter' en Templeet 4

 

 

corner_bottom pix
pix