Home > Article > Backend Development > How to Retrieve Subdirectories from a Given Directory in PHP?
Retrieving Subdirectories from a Given Directory in PHP
Determining the subdirectories present within a specified directory often arises as a requirement in PHP programming. To effectively handle this task, you can leverage either the glob() function or a combination of glob() and array_filter().
Option 1: Utilizing glob() with GLOB_ONLYDIR
The glob() function, when used with the GLOB_ONLYDIR flag, offers a straightforward approach. This flag excludes files and the current (.), parent (..), and any directories beginning with a period (.), ensuring you solely obtain the subdirectories:
$subdirectories = glob('path/to/directory/*', GLOB_ONLYDIR);
Option 2: Leveraging array_filter() to Refine Results
Alternatively, you can combine glob() and array_filter() to filter out files and unwanted directories. However, this method may overlook directories that contain periods in their names, such as .config.
$directories = glob('path/to/directory/*'); $subdirectories = array_filter($directories, 'is_dir');
Applying the Function to Each Subdirectory
Once you have retrieved the subdirectories, you can apply a function to each of them using a loop:
foreach ($subdirectories as $subdirectory) { myFunction($subdirectory); }
By employing either of these options, you can efficiently gather the subdirectories within a specified directory and utilize them in your PHP code as needed.
The above is the detailed content of How to Retrieve Subdirectories from a Given Directory in PHP?. For more information, please follow other related articles on the PHP Chinese website!