Directory PHP核心函数

1 chdir() 函数改变当前的目录。

语法:chdir(directory);

directory   必需。规定新的当前目录。


例:
<?php
// Get current directory
echo getcwd() . "<br>";

// Change directory
chdir("images");

// Get current directory
echo getcwd();
?>


结果:
/home/php
/home/php/images

2 chroot() 函数改变当前进程的根目录为 directory,并把当前工作目录改为 “/”。

语法:chroot(directory);

directory  必需。规定新的根目录路径。

例:
// Change root directory
chroot("/path/to/chroot/");

// Get current directory
echo getcwd();


结果:/

3 closedir() 函数关闭目录句柄。

语法:closedir(dir_handle);

dir_handle  可选。指定之前由 opendir() 打开的目录句柄资源。如果该参数未指定,则使用最后一个由 opendir() 打开的链接。


例:
$dir = "/images/";

// Open a directory, and read its contents
if (is_dir($dir)){
if ($dh = opendir($dir)){
while (($file = readdir($dh)) !== false){
echo "filename:" . $file . "<br>";
}
closedir($dh);
}
}


结果:
filename: cat.gif
filename: dog.gif
filename: horse.gif

4 dir() 函数返回 Directory 类的实例。该函数用于读取一个目录,包含如下:

给定的要打开的目录
dir() 的 handle 和 path 两个属性是可用的
handle 和 path 属性有三个方法:read()、rewind() 和 close()


语法:dir(directory,context);
directory必需。规定要打开的目录。
context可选。


例:
$d = dir(getcwd());

echo "Handle: " . $d->handle . "<br>";
echo "Path: " . $d->path . "<br>";

while (($file = $d->read()) !== false){ 
echo "filename: " . $file . "<br>"; 
} 
$d->close(); 


结果:
Handle: Resource id #2
Path: /etc/php
filename: .
filename: ..
filename: ajax.gif
filename: books.xml
filename: cdcatalog.xml
filename: cd_catalog.xml
filename: default.html
filename: demo_array.html
filename: demo_array.htm
...
...
...

5 getchwd() 函数返回当前工作目录。

语法:getcwd();

例:echo getcwd()
结果:/home/php

6 opendir() 函数打开目录句柄。

语法:opendir(path,context);
path        必需。规定要打开的目录路径。
context     可选。规定目录句柄的环境。context 是可修改目录流的行为的一套选项。

例:
$dir = "/images/";

// Open a directory, and read its contents
if (is_dir($dir)){
if ($dh = opendir($dir)){
while (($file = readdir($dh)) !== false){
echo "filename:" . $file . "<br>";
}
closedir($dh);
}
}


结果:
filename: cat.gif
filename: dog.gif
filename: horse.gif

7 readdir() 函数返回目录中下一个文件的文件名。

语法:readdir(dir_handle);
dir_handle 可选。指定之前由 opendir() 打开的目录句柄资源。如果该参数未指定,则使用最后一个由 opendir() 打开的链接。


例:
$dir = "/images/";

// Open a directory, and read its contents
if (is_dir($dir)){
if ($dh = opendir($dir)){
while (($file = readdir($dh)) !== false){
echo "filename:" . $file . "<br>";
}
closedir($dh);
}
}


结果:
filename: cat.gif
filename: dog.gif
filename: horse.gif

8 rewinddir() 函数重置由 opendir() 创建的目录句柄。

语法:rewinddir(dir_handle);
dir_handle 可选。指定之前由 opendir() 打开的目录句柄资源。如果该参数未指定,则使用最后一个由 opendir() 打开的链接。

例:
$dir = "/images/";

// Open a directory, and read its contents
if (is_dir($dir)){
if ($dh = opendir($dir)){
// List files in images directory
while (($file = readdir($dh)) !== false){
echo "filename:" . $file . "<br>";
}
rewinddir();
// List once again files in images directory
while (($file = readdir($dh)) !== false){
echo "filename:" . $file . "<br>";
}
closedir($dh);
}
}


结果:
filename: cat.gif
filename: dog.gif
filename: horse.gif
filename: cat.gif
filename: dog.gif
filename: horse.gif

9 scandir() 函数返回指定目录中的文件和目录的数组。

语法:scandir(directory,sorting_order,context);
directory   必需。规定要扫描的目录。
sorting_order   可选。规定排列顺序。默认是 0,表示按字母升序排列。如果设置为 SCANDIR_SORT_DESCENDING 或者 1,则表示按字母降序排列。如果设置为 SCANDIR_SORT_NONE,则返回未排列的结果。
context 可选。规定目录句柄的环境。context 是可修改目录流的行为的一套选项。


例:
$dir = "/images/";

// Sort in ascending order - this is default
$a = scandir($dir);

// Sort in descending order
$b = scandir($dir,1);

print_r($a);
print_r($b);

结果:
Array
(
[0] => .
[1] => ..
[2] => cat.gif
[3] => dog.gif
[4] => horse.gif
[5] => myimages
)
Array
(
[0] => myimages
[1] => horse.gif
[2] => dog.gif
[3] => cat.gif
[4] => ..
[5] => .
)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值