📜  PHP scandir()函数

📅  最后修改于: 2022-05-13 01:56:35.664000             🧑  作者: Mango

PHP scandir()函数

在本文中,我们将了解如何使用PHP中的scandir()函数从当前或指定目录中获取所有文件。 PHP中的scandir()函数是一个内置函数,用于返回指定目录的文件和目录数组。 scandir()函数列出指定路径中存在的文件和目录。文件和目录的目录、流行为和排序顺序作为参数传递给 scandir()函数,成功时返回文件名数组,失败时返回 false。

句法:

scandir(directory, sorting_order, context);

参数: PHP中的 scandir()函数接受下面列出的 3 个参数:

  • directory :它是一个强制参数,指定路径。
  • sort_order :它是一个可选参数,指定排序顺序。字母升序 (0) 是默认排序顺序。它可以设置为 SCANDIR_SORT_DESCENDING 或 1 以按字母顺序降序排序,或 SCANDIR_SORT_NONE 以返回未排序的结果。
  • context :它是一个可选参数,用于指定流的行为。

返回值:成功时返回文件名数组,失败时返回 false。

错误和异常:

  • 如果指定的目录不是目录,scandir()函数会抛出 E_WARNING 级别的错误。
  • 对包含许多文件的目录执行递归 scandir 可能会减慢您的应用程序或由于生成的数组的大尺寸而导致 RAM 消耗的高增长。

方法:为了从特定目录中获取所有文件,我们需要指定文件的完整路径并将路径值存储在变量中为$mydir。然后使用scandir()函数扫描当前或特定目录中的文件并返回文件和目录数组。默认情况下,它将按字母升序排列,0 作为默认排序顺序,1 用于按字母降序排序,SCANDIR_SORT_NONE 用于未排序的顺序。

示例 1:下面的示例说明了扫描文件的scandir()函数,返回值将按升序排列。

PHP


PHP


PHP


输出:

(
[0] => .
[1] => ..
[2] => aboutus.php
[3] => contact.php
[4] => index.php 
[5] => terms.php
)

示例 2:此示例说明了扫描文件的scandir()函数,返回值将按降序排列。

PHP


输出:

Array
(
[0] => terms.php
[1] => index.php 
[2] => contact.php
[3] => aboutus.php
[4] => ..
[5] => .
)

示例 3:此示例说明了扫描文件的scandir()函数,返回值将按未排序的顺序排列。

PHP


输出:

Array
(
[0] => .
[1] => ..
[2] => contact.php
[3] => terms.php
[4] => index.php 
[5] => aboutus.php
)

参考: 函数 : PHP 。 PHP