欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【is_file()和is_dir()用于遍历目录时用法注意事项】,下面是详细的分享!
is_file()和is_dir()用于遍历目录时用法注意事项
任务:遍历一个目录并区分显示其中的文件和子目录文件夹:
1、目录inc有以下内容:
| 子目录 0 子目录 a footer.html header.html login_function.inc.php mysqli_connect.php style.css |
2、现在PHP要遍历inc目录,并只显示文件,不显示目录0和a,代码如下:
| $dir=$_SERVER['DOCUMENT_ROOT']; $dir="$dir/inc/"; $d=opendir($dir); while(false !==($f=readdir($d))) { if(is_file($f)){ echo " <h2>$f </h2>"; }else{ echo " <h2>是目录$f </h2>"; } } closedir($d); |
结果却只显示了“footer.html”是文件,其它都变成目录了:
| 是目录. 是目录.. 是目录a footer.html 是目录header.html 是目录login_function.inc.php 是目录mysqli_connect.php 是目录style.css |
这是由于不能在is_file和is_dir中直接使用“$f”,这样会被PHP当作是根目录下的该文件,而在我的根目录下有footer.html这个文件,所以会正确显示这个文件。其它则不行。代码改成:
要正确显示,需要改造代码:
| while(false !==($f=readdir($d))) { if(is_file("$dir/$f")){ echo "<h2>$f</h2>"; }else{ echo "<h2>是目录$f</h2>"; } } closedir($d); |
以上所分享的是关于is_file()和is_dir()用于遍历目录时用法注意事项,下面是编辑为你推荐的有价值的用户互动:
相关问题:is_dir,id_files我用的不对为什么 - 技术问答
答:is_dir最好是绝对路径is_file 相对路径也可以 查看原帖>> 求采纳 >>详细
相关问题:PHP目录is_dir("$path_name/$file")的意思,求大神...
答:当前路径是否是一个文件夹,如果是就 递归调用 list_folder 函数读取当前文件件里面的所有内容 例如: $path='a'; $file='b'; if (is_dir("$path_name/$file")) //相当于这样 if(is_dir('a/b')) 双引号中的变量会读取出内容 { } >>详细
相关问题:PHP中is_dir($dir."/"$file)是什么意思,求高人指点
答:首先,$dir是你上面已经定义过的路径了。 其次,is_dir是检查指定的文件是否是目录,如果文件名存在并且为目录,则返回 true 最后,你写错了,应该写:is_dir($dir."/".$file) >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
