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


Posted in PHP onMarch 02, 2010

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中使用Oracle数据库(3)
Oct 09 PHP
php array_map array_multisort 高效处理多维数组排序
Jun 11 PHP
关于PHP实现异步操作的研究
Feb 03 PHP
基于Zend的Captcha机制的应用
May 02 PHP
使用php统计字符串中中英文字符的个数
Jun 23 PHP
php使用curl发送json格式数据实例
Dec 17 PHP
ThinkPHP中的三大自动简介
Aug 22 PHP
php中switch与ifelse的效率区别及适用情况分析
Feb 12 PHP
深入解析PHP的Yii框架中的缓存功能
Mar 29 PHP
php设计模式之单例模式代码
Jun 11 PHP
php基于PDO连接MSSQL示例DEMO
Jul 13 PHP
php封装的表单验证类完整实例
Oct 19 PHP
php 读取shell管道传输过来的内容
Mar 01 #PHP
php 连接mssql数据库 初学php笔记
Mar 01 #PHP
discuz authcode 经典php加密解密函数解析
Jul 12 #PHP
php下使用SimpleXML 处理XML 文件
Feb 27 #PHP
PHP 导出数据到淘宝助手CSV的方法分享
Feb 27 #PHP
基于pear auth实现登录验证
Feb 26 #PHP
php str_pad() 将字符串填充成指定长度的字符串
Feb 23 #PHP
You might like
php url路由入门实例
2014/04/23 PHP
php去掉文件前几行的方法
2015/07/29 PHP
PHP htmlspecialchars_decode()函数用法讲解
2019/03/01 PHP
PHP实现百度人脸识别
2019/05/06 PHP
Yii框架核心组件类实例详解
2019/08/06 PHP
jQuery的一些注意
2006/12/06 Javascript
jQuery插件原来如此简单 jQuery插件的机制及实战
2012/02/07 Javascript
JavaScript代码复用模式实例分析
2012/12/02 Javascript
iframe子父页面调用js函数示例
2013/11/07 Javascript
window.print打印指定div实例代码
2013/12/13 Javascript
解决jquery操作checkbox火狐下第二次无法勾选问题
2014/02/10 Javascript
node.js中的fs.rmdirSync方法使用说明
2014/12/16 Javascript
基于JavaScript实现生成名片、链接等二维码
2015/09/20 Javascript
快速学习JavaScript的6个思维技巧
2015/10/13 Javascript
jquery根据一个值来选中select下的option实例代码
2016/08/29 Javascript
jquery.validate[.unobtrusive]和Bootstrap实现tooltip错误提示问题分析
2016/10/30 Javascript
webpack实用小功能介绍
2018/01/02 Javascript
vue点击当前路由高亮小案例
2019/09/26 Javascript
js实现动态时钟
2020/03/12 Javascript
git使用.gitignore设置不生效或不起作用问题的解决方法
2017/06/01 Python
Python编程实现正则删除命令功能
2017/08/30 Python
使用python爬取B站千万级数据
2018/06/08 Python
浅谈Python大神都是这样处理XML文件的
2019/05/31 Python
python绘图模块matplotlib示例详解
2019/07/26 Python
PyCharm中代码字体大小调整方法
2019/07/29 Python
GNC健安喜美国官网:美国第一营养品牌
2016/07/22 全球购物
玛蒂尔达简服装:Matilda Jane Clothing
2019/02/13 全球购物
生物专业个人自荐信范文
2013/11/29 职场文书
车间副主任岗位职责
2013/12/24 职场文书
季度思想汇报
2014/01/01 职场文书
《赠汪伦》教学反思
2014/04/12 职场文书
新闻编辑专业自荐信
2014/07/02 职场文书
2014年学校国庆主题活动方案
2014/09/16 职场文书
Pytest中conftest.py的用法
2021/06/27 Python
Java中CyclicBarrier和CountDownLatch的用法与区别
2021/08/23 Java/Android
基于Python实现nc批量转tif格式
2022/08/14 Python