时间:2021-05-26
本文实例讲述了php读取目录及子目录下所有文件名的方法,分享给大家供大家参考。具体实现方法如下:
一般来说php中读取目录下的文件名的方式确实不少,最简单的是scandir,具体代码如下:
复制代码 代码如下:$dir="./caxa/";
$file=scandir($dir);
print_r($file);
稍微复杂点的,来自于php手册:
复制代码 代码如下:$dir = "/etc/php5/";
// Open a known directory, and proceed to read its contents
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
echo "filename: $file : filetype: " . filetype($dir . $file) . "\n";
} closedir($dh);
}
}
这些都只能读取当前指定目录下的文件,对子目录中的文件则无法读取。原来自己写过一个循环删除所有目录的一段代码,需要逐个子目录删除所有文件,包括多层。但是只需要读出文件名,稍微复杂点,网上找到一个能用,原始代码有错误提示,改了一下引用&$data的地方,如下所示:
复制代码 代码如下:function searchDir($path,&$data){
if(is_dir($path)){
$dp=dir($path);
while($file=$dp->read()){
if($file!='.'&& $file!='..'){
searchDir($path.'/'.$file,$data);
}
}
$dp->close();
}
if(is_file($path)){
$data[]=$path;
}
}
function getDir($dir){
$data=array();
searchDir($dir,$data);
return $data;
}
print_r(getDir('.'));
希望本文所述对大家的PHP程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
java递归读取目录下的所有文件(包含子目录下的所有文件)大概思路如下:通过file.listFiles()方法获取目录下的所有文件(包含子目录下的所有文件),
一,php获取目录中的所有文件名1、打开要操作目录的目录句柄代码示例://打开当前目录下的目录pic下的子目录common。$handler=opendir('
写一个PHP函数,实现扫描并打印出自定目录下(含子目录)的所有jpg文件名的方法read()){if($d=="."||$d==".."){continue;}
最近遇到一个问题,输出指定目录下的所有子目录以及所有文件名简单写了个shell脚本实现functionecho_name(){forfilein`ls$1`do
最近用php进行文件目录信息读取,在网上弄到下面一段代码://获取指定目录下的文件列表//$path指定的目录,默认为当前目录//$ifchild是否显示子目录