兼容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 相关文章推荐
聊天室php&amp;mysql(四)
Oct 09 PHP
php heredoc和phpwind的模板技术使用方法小结
Mar 28 PHP
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
Dec 06 PHP
MySQL 日期时间函数常用总结
Jun 12 PHP
CURL状态码列表(详细)
Jun 27 PHP
解析isset与is_null的区别
Aug 09 PHP
PHP正则替换函数preg_replace和preg_replace_callback使用总结
Sep 22 PHP
php求数组全排列,元素所有组合的方法
May 05 PHP
PHP socket 模拟POST 请求实例代码
Jul 18 PHP
thinkPHP框架对接支付宝即时到账接口回调操作示例
Nov 14 PHP
PHP封装XML和JSON格式数据接口操作示例
Mar 06 PHP
详细分析PHP7与PHP5区别
Jun 26 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
PHP单例模式模拟Java Bean实现方法示例
2018/12/07 PHP
浅谈JavaScript中面向对象技术的模拟
2006/09/25 Javascript
Javascript 写的简单进度条控件
2008/01/22 Javascript
JavaScript可否多线程? 深入理解JavaScript定时机制
2012/05/23 Javascript
js调用AJAX时Get和post的乱码解决方法
2013/06/04 Javascript
Js获取下拉框选定项的值和文本的实现代码
2014/02/26 Javascript
js中的setInterval和setTimeout使用实例
2014/05/09 Javascript
Bootstrap每天必学之前端开发框架
2015/11/19 Javascript
js格式化时间的方法
2015/12/18 Javascript
AngularJS手动表单验证
2016/02/01 Javascript
[原创]JS基于FileSaver.js插件实现文件保存功能示例
2016/12/08 Javascript
js排序与重组的实例讲解
2017/08/28 Javascript
vue init webpack myproject构建项目 ip不能访问的解决方法
2018/03/20 Javascript
关于Vue在ie10下空白页的debug小结
2018/05/02 Javascript
解决微信小程序中转换时间格式IOS不兼容的问题
2019/02/15 Javascript
详解a标签添加onclick事件的几种方式
2019/03/29 Javascript
VUE 自定义组件模板的方法详解
2019/08/30 Javascript
js this 绑定机制深入详解
2020/04/30 Javascript
Js跳出两级循环方法代码实例
2020/09/22 Javascript
Python实现运行其他程序的四种方式实例分析
2017/08/17 Python
Python数据库小程序源代码
2019/09/15 Python
pytorch实现特殊的Module--Sqeuential三种写法
2020/01/15 Python
django中url映射规则和服务端响应顺序的实现
2020/04/02 Python
非常漂亮的CSS3百叶窗焦点图动画
2016/02/24 HTML / CSS
土耳其时尚潮流在线购物网站:Trendyol
2017/10/10 全球购物
Speedo速比涛德国官方网站:世界领先的泳装品牌
2019/08/26 全球购物
标准化管理实施方案
2014/02/25 职场文书
办理收楼委托书范本
2014/10/09 职场文书
无房产证房屋转让协议书合同样本
2014/10/18 职场文书
父亲节感言
2015/08/03 职场文书
小学英语教学反思范文
2016/02/15 职场文书
解析在浏览器地址栏输入一个URL后发生了什么
2021/06/21 Servers
springboot新建项目pom.xml文件第一行报错的解决
2022/01/18 Java/Android
java objectUtils 使用可能会出现的问题
2022/02/28 Java/Android
10大幻兽系恶魔果实 蝙蝠果实上榜,第一自愈能力强
2022/03/18 日漫
MySQL事务操作的四大特性以及并发事务问题
2022/04/12 MySQL