WithCoderWithCoderWithCoder

PHP目录类Directory构建与使用

    在PHP中,目录类使用Directory来表示Directory的实例是通过调用 dir() 函数创建的,而不是 new 操作符。本文介绍Directory的使用。

    一、使用 dir 函数构造Directory类,函数语法如下:

Directory dir ( string $directory   [, resource $context  ] )

    函数参数说明:

参数描述
directory必需。规定要打开的目录。
context可选。

    dir() 函数以面向对象的方式访问目录,打开 directory 参数指定的目录。构建成功的话,返回一个 Directory 类实例, 参数错误的情况下返回 null , 其它错误情况返回 false 。

    示例:

<?php

// 构建Directory类对象
$dir = dir('E:\soft');

     二、使用 read 函数从目录实例中读取目录信息,函数语法如下

 string Directory::read ([ resource $dir_handle ] )

    read() 函数从目录实例中读取内容条目。 该函数功能和 readdir() 函数一样, 只是 dir_handle 默认为 $this 变量。

    注意,此处需要明确地检测返回值是否全等于(值和类型都相同)FALSE,否则任何目录项的名称求值为 FALSE 的都会导致循环停止(例如一个目录名为"0")。

    示例:

<?php
// 构建Directory类对象
$dir = dir('E:\soft');

// 输出目录中的条目
while (false !== ($file = $dir->read())) {
    if ($file != '.' && $file != '..') {
        echo $file . '<br>';
    }
}

     三、使用 close 函数释放目录实例,函数语法如下

void Directory::close ([ resource $dir_handle  ] )

    close() 函数用来释放dir创建的目录实例。该函数功能和 closedir() 函数一样, 只是 dir_handle 默认为 $this 变量。

    示例:

<?php
// 构建Directory类对象
$dir = dir('E:\soft');

// 输出目录中的条目
while (false !== ($file = $dir->read())) {
    if ($file != '.' && $file != '..') {
        echo $file . '<br>';
    }
}

// 释放目录句柄
$dir->close();

    四、使用 rewind 函数重置目录实例,函数语法如下

void Directory::rewind ([ resource $dir_handle  ] )

    rewind() 函数用来重置dir创建的目录实例,将 dir_handle 指定的目录流重置到目录的开头。该函数功能和 rewinddir() 函数一样, 只是 dir_handle 默认为 $this 变量。

    示例:

<?php
// 构建Directory类对象
$dir = dir('E:\soft');

// 输出目录中的条目
while (false !== ($file = $dir->read())) {
    if ($file != '.' && $file != '..') {
        echo $file . '<br>';
    }
}

// 重置目录句柄
$dir->rewind();

// 释放目录句柄
$dir->close();

        

欢迎分享交流,转载请注明出处:WithCoder » PHP目录类Directory构建与使用