PHP中怎样获取目录中的文件名

技术PHP中怎样获取目录中的文件名PHP中怎样获取目录中的文件名,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。我们来看一下PHP中怎样去获取目录下的文件相关

我相信很多没有经验的人对于如何在PHP中获取目录中的文件名都无能为力。因此,本文总结了问题产生的原因及解决方法。希望你能通过这篇文章解决这个问题。

让我们来看看如何在PHP中获取关于目录中文件的知识。

我们已经知道如何在PHP中打开和关闭目录。在关闭目录之前,我们会对目录进行操作,其中常见的操作是获取目录中的文件和文件夹。

也就是说,如果你想知道如何获取目录中的文件,你必须首先打开和关闭目录。所以,如果opendir()函数和closedir()函数还不知道,可以点击上面的链接了解。让我们看看如何在PHP中获取目录下的文件。

在PHP中,我们可以使用readdir()函数和scandir()函数来获取目录中的文件名。

readdir()函数获取文件中的下一个文件名

readdir()函数是一个简单的操作,说简单是因为它可以在函数成功执行后返回opendir()函数打开的目录中的文件或目录名;如果函数没有成功执行,返回的结果就是flase。

readdir()函数具有以下基本语法格式:

Readdir([resource$dir_handle])需要注意的是,$dir_handle是一个可选参数,填写时表示opendir()函数打开的目录参数。

接下来,让我们通过一个例子来看看readdir()函数的用法,如下所示:

?服务器端编程语言(Professional Hypertext Preprocessor的缩写)

$ dir=' D:

if(is _ dir($ dir)){ 0

$ info=open dir($ dir);

$ file=readdir($ info);

echo $文件。br ';

close dir($ info);

}

?输出结果:

PHP中怎样获取目录中的文件名

上面例子中的这种写法一般不用。通常,您希望通过readdir()函数获取目录中的所有文件,并且需要通过while循环获取它们。示例如下:

?服务器端编程语言(Professional Hypertext Preprocessor的缩写)

$ dir=' D:

if(is _ dir($ dir)){ 0

$ info=open dir($ dir);

while(($file=readdir($info))!==false){ 0

echo $文件。br ';

}

close dir($ info);

}

?输出结果:

ation/20211102/98/207899.jpg" alt="PHP中怎样获取目录中的文件名">

如此我们便通过readdir()函数与while循环配合完成了对目标目录中文件名的获取。这就是readdir()函数的应用,接下来我们看一下另外一种方法,也就是scandir()函数。

scandir()函数,数组形式返回目录文件名

上文中我们了解了readdir()函数可以获取目标目录内的文件名,其中配合while循环可以简单直接的得到目录下的文件或者目录名。接下来要说的scandir()函数与readdir()函数有一些不同。

  • readdir()函数一次只能返回一个文件名,但是scandir()函数执行成功之后能够返回目标目录内所有的文件名和目录名;

  • readdir返回的结果直接就是文件的名称,scandir的返回结果也是文件的名称但是是以数组的形式返回的结果;

  • readdir函数没有执行成功的话返回的结果是flase,scandir函数没有执行成功时返回的加过也是flase但是同时也会有错误信息。

下面我们来看一下scandir()函数的基本语法,示例如下:

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

其中需要注意的是:$directory表示要读取的目录;当$sorting_order的参数设置为SCANDIR_SORT_DESCENDING 或者 1的时候,返回的结果也就是文件名,它们的排列顺序是按着字母降序排列。当$sorting_order的参数设置为SCANDIR_SORT_NONE的时候,返回的结果就是未排列的结果,其中这个参数是个可选参数。

接下来我们通过示例来看一下scandir()函数的应用,示例如下:

<?php
    $dir = 'D:\phpstudy_pro\WWW';
    if(is_dir($dir)){
        $arr1 = scandir($dir);
        $arr2 = scandir($dir, 1);
    }
    echo "<pre>";
    print_r($arr1);
    print_r($arr2);
?>

上述示例中,目的是想要通过scandir()函数来获取目录路径为“D:\phpstudy_pro\WWW”的目录内文件名,然后通过不同的参数来实现不同的字母顺序排列,输出结果如下:

PHP中怎样获取目录中的文件名

通过上述示例就能够看出scandir()函数能够通过数组的形式返回目标目录中的文件名,并且函数内$sorting_order的参数不同返回结果的排序也就不同。

看完上述内容,你们掌握PHP中怎样获取目录中的文件名的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/65126.html

(0)

相关推荐

  • Python列表的定义及使用方法是什么

    技术Python列表的定义及使用方法是什么这篇文章主要介绍“Python列表的定义及使用方法是什么”,在日常操作中,相信很多人在Python列表的定义及使用方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操

    攻略 2021年11月1日
  • Python图像处理是否需强大的图片处理工具

    技术Python图像处理是否需强大的图片处理工具本篇文章为大家展示了Python图像处理是否需强大的图片处理工具,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Python图像处理

    攻略 2021年10月28日
  • 杯弓蛇影的意思是,形容水中倒影的成语有哪些

    技术杯弓蛇影的意思是,形容水中倒影的成语有哪些水中倒影杯弓蛇影的意思是,并不是影子。影子是由于光的直线传播,当光线遇到不透明的物体时,在物体后面形成的黑暗区域。而水中倒影是光的反射现象,当物体射出的光线射到水面上时,被水

    生活 2021年10月27日
  • esp32使用光敏传感器实现LED灯的亮暗线性调节

    技术esp32使用光敏传感器实现LED灯的亮暗线性调节 esp32使用光敏传感器实现LED灯的亮暗线性调节LED灯接ESP32的18口和GND。
    光敏传感器VCC接3.3,GND接GND,DO不接,AO

    礼包 2021年11月11日
  • 基于RTVC-7 Voice Cloning Model 的Tuned-GE2E-SayEN-EarSpeech 搭建怎样的

    技术基于RTVC-7 Voice Cloning Model 的Tuned-GE2E-SayEN-EarSpeech 搭建怎样的基于RTVC-7 Voice Cloning Model 的Tuned-GE2E-SayEN

    攻略 2021年12月10日
  • 正三棱柱的性质,正三棱柱与直三棱柱有区别吗

    技术正三棱柱的性质,正三棱柱与直三棱柱有区别吗根据三棱柱的基本性质和分类,可知正三棱柱和直三棱柱的区别为底面不同正三棱柱的性质、侧面不同、范围不同,具体区别如下:1、棱柱的底面不同正三棱柱的底面是全等的正三角形,直三棱柱

    生活 2021年10月30日