兼容PHP5的PHP目录管理函数库


Posted in PHP onJuly 10, 2008

主要能兼容: PHP 5
一、chdir -- 改变目录
语法:bool chdir ( string directory )
返回值:整数
函数种类: 文件存取
内容说明:
将 PHP 的当前目录改为directory。directory:新的当前目录。返回值如果成功则返回 TRUE,失败则返回 FALSE。
例子讲解: 

 程序代码
<?php
// current directory
echo getcwd() . "\n";
chdir('public_html');
// current directory
echo getcwd() . "\n";
?>

输出结果为:
/home/vincent
/home/vincent/public_html

注意:循环语句中会出现“ Warning: chdir(): No such file or directory (errno 2) in ***** on line *”错误。

 程序代码
<?php
// current directory
echo getcwd() . "\n";
for($i=1; $i<=2; $i++){
chdir('whoist');
// current directory
echo getcwd() . "\n";
}
?>

二、dir -- directory 类
语法:new dir(string directory);
返回值:类
函数种类: 文件存取
内容说明:
这是一个类似面向对象的类别类,用来读取目录。当目录参数 directory 打开之后,有二个属性可用:handle 属性就像其它非类的函数所用的 readdir()、rewinddir() 及 closedir();path 属性则配置打开目录后的路径参数。本类有三个方法 (method):read、rewind 与 close。
class dir {
dir ( string directory )
string path
resource handle
string read ( void )
void rewind ( void )
void close ( void )
}
例子讲解: 

 程序代码
<?php
$d = dir("/etc/php5");
echo "Handle: " . $d->handle . "\n";
echo "Path: " . $d->path . "\n";
while (false !== ($entry = $d->read())) {
echo $entry."\n"; 
}
$d->close();
?>

输出结果为:
Handle: Resource id #2
Path: /etc/php5
.
..
apache
cgi
cli

注: read 方法返回的目录项的顺序依赖于系统。
注: 本函数定义了内部类 Directory,意味着不能再用同样的名字定义用户自己的类。

三、closedir -- 关闭目录句柄
语法:void closedir ( resource dir_handle )
返回值:无
函数种类: 文件存取
内容说明:
关闭由 dir_handle 指定的目录流。流必须之前被 opendir() 所打开。
例子讲解:

 程序代码
<?php
$dir = "/etc/php5/";
// Open a known directory, read directory into variable and then close
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        $directory = readdir($dh);
        closedir($dh);
    }
}
?>

四、opendir -- 打开目录句柄
语法:resource opendir ( string path [, resource context] )
返回值:整数
函数种类: 文件存取
内容说明:
本函数用来打开目录资料流。返回的整数是可供其它目录函数closedir(),readdir() 和 rewinddir() 操作的 handle。如果成功则返回目录句柄的resource,失败则返回 FALSE。
例子讲解:

 程序代码
<?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);
    }
}
?>

输出结果为:
filename: . : filetype: dir
filename: .. : filetype: dir
filename: apache : filetype: dir
filename: cgi : filetype: dir
filename: cli : filetype: dir

PHP 相关文章推荐
oracle资料库函式库
Oct 09 PHP
mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array
Jan 15 PHP
php xml-rpc远程调用
Dec 19 PHP
php 日期和时间的处理-郑阿奇(续)
Jul 04 PHP
使用array_map简单搞定PHP删除文件、删除目录
Oct 29 PHP
PHP中SimpleXML函数用法分析
Nov 26 PHP
PHP实现抓取HTTPS内容
Dec 01 PHP
PHP微信开发之文本自动回复
Jun 23 PHP
php中preg_replace正则替换用法分析【一次替换多个值】
Jan 17 PHP
PHP中for循环与foreach的区别
Mar 06 PHP
PHP Post获取不到非表单数据的问题解决办法
Feb 27 PHP
PHP基于openssl实现非对称加密代码实例
Jun 19 PHP
php 防止单引号,双引号在接受页面转义
Jul 10 #PHP
功能齐全的PHP发送邮件类代码附详细说明
Jul 10 #PHP
使用PHP批量生成随机用户名
Jul 10 #PHP
用PHP与XML联手进行网站编程代码实例
Jul 10 #PHP
PHP写入WRITE编码为UTF8的文件的实现代码
Jul 07 #PHP
PHP远程连接MYSQL数据库非常慢的解决方法
Jul 05 #PHP
[原创]效率较高的php下读取文本文件的代码
Jul 02 #PHP
You might like
ThinkPHP、ZF2、Yaf、Laravel框架路由大比拼
2015/03/25 PHP
thinkphp微信开发(消息加密解密)
2015/12/02 PHP
PHP+MySQL实现的简单投票系统实例
2016/02/24 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
使用Git实现Laravel项目的自动化部署
2019/11/24 PHP
javascript针对DOM的应用分析(三)
2012/04/15 Javascript
Javascript学习笔记之函数篇(四):arguments 对象
2014/11/23 Javascript
Uploadify上传文件方法
2016/03/16 Javascript
JavaScript中运算符规则和隐式类型转换示例详解
2017/09/06 Javascript
JS实现闭包中的沙箱模式示例
2017/09/07 Javascript
解决ie img标签内存泄漏的问题
2017/10/13 Javascript
React Native自定义控件底部抽屉菜单的示例
2018/02/08 Javascript
jQuery实现模糊搜索功能的方法分析
2018/06/29 jQuery
react国际化化插件react-i18n-auto使用详解
2020/03/31 Javascript
Vue elementui字体图标显示问题解决方案
2020/08/18 Javascript
Python基础之函数用法实例详解
2014/09/10 Python
Python实现的堆排序算法原理与用法实例分析
2017/11/22 Python
python 列表降维的实例讲解
2018/06/28 Python
Pythony运维入门之Socket网络编程详解
2019/04/15 Python
python获取array中指定元素的示例
2019/11/26 Python
Python实现链表反转的方法分析【迭代法与递归法】
2020/02/22 Python
Python获取浏览器窗口句柄过程解析
2020/07/25 Python
详解scrapy内置中间件的顺序
2020/09/28 Python
Lou & Grey美国官网:主打舒适性面料服饰
2017/12/21 全球购物
数据库什么时候应该被重组
2012/11/02 面试题
中专毕业生自荐信
2013/11/16 职场文书
医学专业五年以上个人求职信
2013/12/03 职场文书
食堂个人先进事迹
2014/01/22 职场文书
小学生获奖感言范文
2014/02/02 职场文书
药店促销活动总结
2014/07/10 职场文书
商铺消防安全责任书
2014/07/29 职场文书
群众路线对照检查材料
2014/09/22 职场文书
承兑汇票延期证明
2015/06/23 职场文书
基于nginx实现上游服务器动态自动上下线无需reload的实现方法
2021/03/31 Servers
详解Python牛顿插值法
2021/05/11 Python
动态规划之使用备忘录来改进Javascript函数
2022/04/07 Javascript