Home  >  Article  >  Backend Development  >  How to get the file name in the directory in PHP (summary sharing)

How to get the file name in the directory in PHP (summary sharing)

WBOY
WBOYOriginal
2021-11-02 11:56:077054browse

In the previous article "Knowledge Summary of Closing and Opening Directories in PHP File Processing", the relevant knowledge of how to open and close directories in PHP was introduced in detail. Let's continue to look at this article. Let’s take a look at how to obtain relevant knowledge about files in a directory in PHP. Among them is the knowledge about opening and closing directories in our previous article. I hope it will be helpful to everyone!

How to get the file name in the directory in PHP (summary sharing)

We have learned how to open and close a directory in PHP. Before closing the directory, the directory will be operated. One of the commonly used operations is to obtain the contents of the directory. Files and folders.

In other words, if you want to know how to get the files in the directory, you must first open and close the directory, so opendir() function and closedir()If you don’t understand the function yet, you can click on the link above to learn. Let's take a look at how to obtain the files in the directory in PHP.

In PHP, we can complete the operation of obtaining the file name in the directory through the readdir() function and the scandir() function.

<strong><span style="font-size: 20px;">readdir()</span></strong>Function gets the next file name in the file

readdir() The function is a simple operation. It is simple because when the function is executed successfully, it can return to open the directory through the opendir() function A file or directory name in; if the function does not execute successfully, the returned result is flase.

The basic syntax format of the readdir() function is as follows:

readdir([resource $dir_handle])

It should be noted that: $dir_handle is an optional parameter. When filled in, it means is the directory parameter opened through the opendir() function.

Next, let’s take a look at the use of the readdir() function through an example. The example is as follows:

<?php
    $dir = &#39;D:&#39;;
    if(is_dir($dir)){
        $info = opendir($dir);
        $file = readdir($info);
        echo $file.&#39;<br>&#39;;
        closedir($info);
    }
?>

Output result:

How to get the file name in the directory in PHP (summary sharing)

This writing method in the above example is generally not used. Generally, if you want to obtain the files in all directories through the readdir() function, you need to obtain them through a while loop. The example is as follows:

<?php
    $dir = &#39;D:&#39;;
    if(is_dir($dir)){
        $info = opendir($dir);
        while (($file = readdir($info)) !== false) {
            echo $file.&#39;<br>&#39;;
        }
        closedir($info);
    }
?>

Output result:

How to get the file name in the directory in PHP (summary sharing)

In this way, we complete the acquisition of the file name in the target directory through the readdir() function and the while loop. This is the application of the readdir() function. Next, let's look at another method, which is the scandir() function.

<strong><span style="font-size: 20px;">scandir()</span></strong>Function, returns the directory file name in array form

We learned above that the readdir() function can obtain the file name in the target directory, and with the while loop, the file or directory name in the directory can be obtained simply and directly. The scandir() function to be discussed next is somewhat different from the readdir() function.

  • readdir()The function can only return one file name at a time, but the scandir() function can return all files in the target directory after successful execution. The file name and directory name;

  • readdirThe result returned is directly the name of the file, scandirThe result returned is also the name of the file but it is The result returned in the form of an array;

  • readdirIf the function is not executed successfully, the returned result is false, scandirWhen the function is not executed successfully The returned value is also flase but there will also be an error message.

Let’s take a look at the basic syntax of the scandir() function. The example is as follows:

scandir(string $directory[, int $sorting_order[, resource $context]])

What needs to be noted is: $directory indicates the directory to be read; when the parameter of $sorting_order is set to SCANDIR_SORT_DESCENDING or 1, the returned result is the file name, and their The sorting order is in descending alphabetical order. When the $sorting_order parameter is set to SCANDIR_SORT_NONE, the returned result is the unsorted result, and this parameter is an optional parameter.

Next, let’s take a look at the application of the scandir() function through an example. The example is as follows:

<?php
    $dir = &#39;D:\phpstudy_pro\WWW&#39;;
    if(is_dir($dir)){
        $arr1 = scandir($dir);
        $arr2 = scandir($dir, 1);
    }
    echo "<pre class="brush:php;toolbar:false">";
    print_r($arr1);
    print_r($arr2);
?>

In the above example, the purpose is to use the scandir() function to obtain the directory path as " D:\phpstudy_pro\WWW" directory, and then use different parameters to achieve different alphabetical arrangements. The output results are as follows:

How to get the file name in the directory in PHP (summary sharing)

Through the above From the example, you can see that the scandir() function can return the file names in the target directory in the form of an array, and the order of the returned results will be different depending on the $sorting_order parameter in the function.

If you are interested, you can click on "PHP Video Tutorial" and "Knowledge Summary of Closing and Opening Directories in PHP File Processing" to learn more about PHP knowledge .

The above is the detailed content of How to get the file name in the directory in PHP (summary sharing). For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn