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

yipeiwu_com6年前PHP代码库
主要能兼容: 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//========================== 定义redirect() 开始 =========================///**...

Yii 2.0中场景的使用教程

前言 熟悉Yii框架的人都知道,灵活的使用场景可以达到事半功倍的效果! 比如普通的数据的新增、修改,新增需要验证其中两个字段,而修改只需要验证其中一个字段;还有种情况,也是我们现在用到的...

PHP实现基数排序的方法详解

PHP实现基数排序的方法详解

本文实例讲述了PHP实现基数排序的方法。分享给大家供大家参考,具体如下: 基数排序是根据关键字中各位的值,通过对排序的N个元素进行若干趟“分配”与“收集”来实现排序的。 不妨通过一个具体...

php5.3 注意事项说明

php5.3新特性1.支持命名空间(namespace)5.3以前复制代码 代码如下:<?phpclass Zend_Db_Table_Select {//表示当前这个类文件位于Z...

将酷狗krc歌词解析并转换为lrc歌词php源码

最近在进行一次对酷狗音乐歌词采集时发现酷狗音乐的歌词直接浏览都是“乱码”,自己平时所见的歌词都是lrc格式的文本,这种酷狗专用的krc格式的显然是经过特别处理过的,平时用酷狗听音乐也没仔...