php is_file()和is_dir()用于遍历目录时用法注意事项

 更新时间:2010年03月02日 13:16:11   作者:  
遍历一个目录并区分显示其中的文件和子目录文件夹的实现代码。
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);

相关文章

  • php中文字符串截取方法实例总结

    php中文字符串截取方法实例总结

    这篇文章主要介绍了php中文字符串截取方法实例,针对常见的字符串截取函数进行了分析比对,并给出了一个完整实例来解决PHP中文字符串截取问题,需要的朋友可以参考下
    2014-09-09
  • 深入解析fsockopen与pfsockopen的区别

    深入解析fsockopen与pfsockopen的区别

    本篇文章是对fsockopen与pfsockopen的区别进行了详细的分析介绍,需要的朋友参考下
    2013-07-07
  • PHP截取汉字乱码问题解决方法mb_substr函数的应用

    PHP截取汉字乱码问题解决方法mb_substr函数的应用

    利用mb_substr截取字符串不会出现乱码问题,高手可以飞过......
    2008-03-03
  • PHP中feof()函数实例测试

    PHP中feof()函数实例测试

    这篇文章主要介绍了PHP中feof()函数实例测试,需要的朋友可以参考下
    2014-08-08
  • 深入解析Session是否必须依赖Cookie

    深入解析Session是否必须依赖Cookie

    php中的session是否只能使用session cookie呢?下面小编就来详细的为大家介绍一下吧,需要的朋友可以过来参考下
    2013-08-08
  • php读取远程gzip压缩网页的方法

    php读取远程gzip压缩网页的方法

    这篇文章主要介绍了php读取远程gzip压缩网页的方法,当站点使用gzip压缩时,使用常规的远程获取方法会得到乱码结果,使用本文方法即可解决这个问题,需要的朋友可以参考下
    2014-12-12
  • PHP实现的自定义数组排序函数与排序类示例

    PHP实现的自定义数组排序函数与排序类示例

    这篇文章主要介绍了PHP实现的自定义数组排序函数与排序类,结合实例形式分析了php自定义二维数组排序函数与排序类的相关实现技巧,需要的朋友可以参考下
    2016-11-11
  • php自定义中文字符串截取函数substr_for_gb2312及substr_for_utf8示例

    php自定义中文字符串截取函数substr_for_gb2312及substr_for_utf8示例

    这篇文章主要介绍了php自定义中文字符串截取函数substr_for_gb2312及substr_for_utf8用法,结合实例形式分析了针对gb2312与utf-8编码的自定义中文字符串截取函数的实现与使用方法,需要的朋友可以参考下
    2016-05-05
  • PHP实现的博客欢迎提示功能(很特别哦)

    PHP实现的博客欢迎提示功能(很特别哦)

    很别致的欢迎词功能,可以放在博客的空余位置,让访客通过直接访问、搜索引擎访问时,显示欢迎提示,就跟店门口的服务员说“欢迎光临”似的,让人如沐春风啊。
    2014-06-06
  • PHP详细彻底学习Smarty

    PHP详细彻底学习Smarty

    Smarty是一个php模板引擎,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法. Smarty要求web服务器运行php4.0.6和以上版本. smarty安装需要smarty库文件。可以去官方网站http://smarty.php.net下载。 网上讲了很多安装的教程,但是我都没有成功,所以直接把整个目录名改为smarty直接复制到了网站所在的目录下,然后打开http://网站路径/smarty/demo/index.php,显示正常,应该算是安装成功了。
    2008-03-03

最新评论