主要能兼容:PHP5
一、chdir--改变目录
语法:boolchdir(stringdirectory)
返回值:整数
函数种类:文件存取
内容说明:
将PHP的当前目录改为directory。directory:新的当前目录。返回值如果成功则返回TRUE,失败则返回FALSE。
例子讲解:
程序代码
<?php
//currentdirectory
echogetcwd()."n";
chdir('public_html');
//currentdirectory
echogetcwd()."n";
?>
输出结果为:
/home/vincent
/home/vincent/public_html
注意:循环语句中会出现“Warning:chdir():Nosuchfileordirectory(errno2)in*****online*”错误。
程序代码
<?php
//currentdirectory
echogetcwd()."n";
for($i=1;$i<=2;$i++){
chdir('whoist');
//currentdirectory
echogetcwd()."n";
}
?>
二、dir--directory类
语法:newdir(stringdirectory);
返回值:类
函数种类:文件存取
内容说明:
这是一个类似面向对象的类别类,用来读取目录。当目录参数directory打开之后,有二个属性可用:handle属性就像其它非类的函数所用的readdir()、rewinddir()及closedir();path属性则配置打开目录后的路径参数。本类有三个方法(method):read、rewind与close。
classdir{
dir(stringdirectory)
stringpath
resourcehandle
stringread(void)
voidrewind(void)
voidclose(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:Resourceid#2
Path:/etc/php5
.
..
apache
cgi
cli
注:read方法返回的目录项的顺序依赖于系统。
注:本函数定义了内部类Directory,意味着不能再用同样的名字定义用户自己的类。
三、closedir--关闭目录句柄
语法:voidclosedir(resourcedir_handle)
返回值:无
函数种类:文件存取
内容说明:
关闭由dir_handle指定的目录流。流必须之前被opendir()所打开。
例子讲解:
程序代码
<?php
$dir="/etc/php5/";
//Openaknowndirectory,readdirectoryintovariableandthenclose
if(is_dir($dir)){
if($dh=opendir($dir)){
$directory=readdir($dh);
closedir($dh);
}
}
?>
四、opendir--打开目录句柄
语法:resourceopendir(stringpath[,resourcecontext])
返回值:整数
函数种类:文件存取
内容说明:
本函数用来打开目录资料流。返回的整数是可供其它目录函数closedir(),readdir()和rewinddir()操作的handle。如果成功则返回目录句柄的resource,失败则返回FALSE。
例子讲解:
程序代码
<?php
$dir="/etc/php5/";
//Openaknowndirectory,andproceedtoreaditscontents
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