Maison >développement back-end >tutoriel php >La fonction glob() en PHP est utilisée pour rechercher des fichiers ou des répertoires

La fonction glob() en PHP est utilisée pour rechercher des fichiers ou des répertoires

WBOY
WBOYoriginal
2023-11-18 18:17:231043parcourir

La fonction glob() en PHP est utilisée pour rechercher des fichiers ou des répertoires

La fonction glob() en PHP est utilisée pour rechercher des fichiers ou des répertoires et est une puissante fonction d'opération de fichiers. Il peut renvoyer le chemin d'un fichier ou d'un répertoire en fonction d'une correspondance de modèle spécifiée. La syntaxe de la fonction

glob() est la suivante :

glob(motif, drapeaux)

où motif représente la chaîne de motif à faire correspondre, qui peut être une expression générique, telle que *.txt (correspond aux fichiers se terminant par avec .txt ), ou un chemin de fichier spécifique. flags est un paramètre facultatif utilisé pour contrôler le comportement de la fonction.

Examinons quelques exemples de code spécifiques pour illustrer l'utilisation de la fonction glob().

Exemple 1 : Rechercher tous les fichiers dans le répertoire spécifié

$files = glob('/var/www/html/*');
foreach ($files as $file) {
    echo $file . '<br>';
}

Ce code trouvera tous les fichiers sous le chemin spécifié /var/www/html et imprimera leurs chemins. Notez que cet exemple n'utilise pas d'expressions génériques, mais spécifie directement un chemin de répertoire.

Exemple 2 : faire correspondre les fichiers avec le nom de suffixe spécifié

$files = glob('/var/www/html/*.txt');
foreach ($files as $file) {
    echo $file . '<br>';
}

Ce code trouvera tous les fichiers se terminant par .txt sous le chemin spécifié /var/www/html et imprimera leurs chemins. L'expression générique *.txt est utilisée ici.

Exemple 3 : Rechercher récursivement tous les fichiers dans le répertoire spécifié

function getAllFiles($dir) {
    $files = glob($dir . '/*');
    foreach ($files as $file) {
        if (is_dir($file)) {
            getAllFiles($file);
        } else {
            echo $file . '<br>';
        }
    }
}

getAllFiles('/var/www/html');

Ce code utilise la récursion pour trouver tous les fichiers dans le répertoire spécifié. Il obtient d'abord tous les fichiers et sous-répertoires du répertoire, puis appelle la fonction getAllFiles() pour chaque sous-répertoire afin d'effectuer une recherche récursive.

Exemple 4 : Rechercher tous les répertoires sous le répertoire spécifié

$directories = glob('/var/www/html/*', GLOB_ONLYDIR);
foreach ($directories as $directory) {
    echo $directory . '<br>';
}

Ce code trouvera tous les sous-répertoires sous le chemin spécifié /var/www/html et imprimera leurs chemins. En définissant le paramètre flags sur GLOB_ONLYDIR, vous ne pouvez faire correspondre que les répertoires.

En résumé, la fonction glob() est très utile pour rechercher des fichiers ou des répertoires en PHP. Il peut localiser de manière flexible les fichiers ou répertoires dont nous avons besoin en fonction d'une correspondance de modèles spécifiée et fournit une variété d'options d'utilisation et de paramètres pour répondre à différents besoins. Que ce soit dans les opérations sur les fichiers ou la traversée de répertoires, la fonction glob() est un outil très pratique et efficace.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn