当我们在编写PHP应用程序时,免不了会有处理文件的模块,此时读取或创建文件夹、文件是必不可少的,其实这并不复杂,只要我们使用PHP内置的文件函数即可。本文列出了10个常用、重要,也是必须掌握的文件函数。
创建目录函数:mkdir()
使用mkdir()函数可以在指定路径下创建目录,并且可以设置目录权限,如:
1
|
mkdir
(
"/home/php_files"
, 0777);
|
在home目录下创建php_files目录,第二个参数可选。
获取当前文件目录函数:getcwd()
在PHP中,使用getcwd()函数可以获取当前文件所在的目录
改变当前文件目录:chdir()
使用chdir()函数可以改变文件当前目录,我们只需要给出一个新的路径即可,如:
1
|
chdir
(
'include'
);
|
将当前文件路径转到子目录include下。
改变根目录:chroot()
chroot()函数可以将当前文件目录更改为根目录“/”,如:
1
2
3
4
|
<?php
chroot
(
"/home/php_filesinclude/include"
);
echo
getcwd
();
?>
|
输出“/”
读取目录内容:opendir()
使用opendir()函数打开目录,并配合readdir()函数读取目录内容。如:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<?php
$dir
=
"/home/php_files/images/"
;
// Open up a directory, and read its contents
if
(
is_dir
(
$dir
)){
if
(
$dh
= opendir(
$dir
)){
while
((
$file
= readdir(
$dh
)) !== false){
echo
"File:"
.
$file
. "
";
}
closedir
(
$dh
);
}
}
?>
|
重置目录句柄:rewinddir()
rewinddir()函数可以重置由opendir()打开的目录句柄。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<?php
$dir
= opendir(
"/home/php_files/images/"
);
if
(
$dh
= opendir(
$dir
)){
while
((
$file
= readdir(
$dh
)) !== false){
echo
"filename:"
.
$file
. "
";
}
rewinddir
();
while
((
$file
= readdir(
$dh
)) !== false){
echo
"filename:"
.
$file
. "
";
}
}
?>
|
文件和目录列表:scandir()
使用scandir()函数可以查询指定目录的目录和文件列表。
1
2
3
4
5
|
<?php
$dir
= opendir(
"/home/php_files/images/"
);
$files
= scandir(
$dir
);
print_r(
$files
);
?>
|
获取目录对象:dir()
dir()函数打开一个目录句柄,并返回一个目录流对象。
1
2
3
4
|
<?php
$path
= dir(
getcwd
());
print_r(
$path
);
?>
|
打开目录句柄:opendir()
通过opendir()函数打开目录,并读取文件。
1
2
3
4
5
6
7
8
9
10
11
12
|
<?php
$dir_path
= dir(
getcwd
());
if
(
is_dir
(
$dir_path
)){
if
(
$dh
= opendir(
$dir_path
)){
while
((
$file
= readdir(
$dh
)) !== false){
echo
"File:"
.
$file
. "
";
}
closedir
(
$dh
);
}
}
?>
|
关闭目录句柄:closedir()
目录句柄打开并使用完成后最好能手动关闭,以节省资源。
1
2
3
4
5
6
7
8
9
|
<?php
$dir_path
= dir(
"/home/php_files/"
);
if
(
is_dir
(
$dir_path
)) {
if
(
$dh
= opendir(
$dir_path
)) {
$directory
= readdir(
$dh
);
closedir
(
$dh
);
}
}
?>
|