文件打开和关闭
fopen($filename, $mode)
: 打开文件或 URL。
参数:
$filename
(string): 要打开的文件名或 URL。$mode
(string): 打开文件的模式,例如'r'
(只读),'w'
(只写),'a'
(追加),'r+'
(读写),'w+'
(读写,文件会被清空),'a+'
(读写,文件会被创建或追加)。
返回值:
- 成功时,返回一个文件指针资源;失败时,返回
false
。
fclose($handle)
: 关闭打开的文件指针。
参数:
$handle
(resource): 文件指针,通常是fopen()
返回的句柄。
返回值:
- 成功时返回
true
;失败时返回false
。
$handle = fopen('example.txt', 'r'); // 以只读模式打开文件 if ($handle) { // 文件操作 fclose($handle); // 关闭文件 }
文件读取
fread($handle, $length)
: 读取文件内容。
参数:
$handle
: 文件指针资源。$length
: 要读取的字节数。
返回值:
- 读取到的数据;如果到达文件末尾或出错则返回
false
。
<?php $handle = fopen('example.txt', 'r'); if ($handle) { $contents = fread($handle, filesize('example.txt')); fclose($handle); echo $contents; } ?>
fgets($handle, $length)
: 读取文件的一行。
参数:
$handle
: 文件指针资源。$length
: 要读取的最大字节数。
返回值:
- 读取到的行;如果到达文件末尾则返回
false
。
file_get_contents($filename)
: 读取整个文件的内容到一个字符串中。
参数:
$filename
: 文件名。
返回值:
- 文件内容的字符串;失败时返回
false
。
file($filename)
: 读取文件到数组中,每一行作为一个数组元素。
参数:
$filename
: 文件名。$flags
: 可选标志,常用FILE_SKIP_EMPTY_LINES
跳过空行。
返回值:
- 包含文件每一行的数组;失败时返回
false
。
文件操作
fwrite($handle, $string)
: 写入数据到文件。
参数:
$handle
: 文件指针资源。$length
: 要写入的字符串。
返回值:
- 成功时返回写入的字节数;失败时返回
false
。
file_put_contents($filename, $data)
: 将数据写入文件,如果文件不存在则创建文件。
参数:
$filename
: 文件名。$data
: 要写入的数据。$flags
: 可选标志,常用FILE_APPEND
追加到文件末尾。
返回值:
- 成功时返回写入的字节数;失败时返回
false
。
unlink($filename)
: 删除文件。
参数:
$filename
: 要删除的文件名。
返回值:
- 成功时返回
true
;失败时返回false
。
copy($source, $dest)
: 复制文件。
rename($oldname, $newname)
: 重命名或移动文件。
参数:
$oldname
: 原文件名。$newname
: 新文件名。
返回值:
- 成功时返回
true
;失败时返回false
。
文件信息
filesize($filename)
: 获取文件的大小。
filemtime($filename)
: 获取文件的最后修改时间。
file_exists($filename)
: 检查文件是否存在。
is_file($filename)
: 检查路径是否为文件。
is_dir($dirname)
: 检查路径是否为目录。
文件权限
chmod($filename, $mode)
: 改变文件权限。
chown($filename, $user)
: 更改文件所有者(需要管理员权限)。
chgrp($filename, $group)
: 更改文件所属组(需要管理员权限)。
目录操作
opendir($dirname)
: 打开目录句柄。
参数:
$dirname
: 要打开的目录路径。
返回值:
- 成功时返回目录句柄;失败时返回
false
。
<?php $handle = opendir('some_directory'); if ($handle) { while (($file = readdir($handle)) !== false) { echo $file . '<br>'; } closedir($handle); } ?>
readdir($handle)
: 读取目录中的条目。
参数:
$handle
: 目录句柄。
返回值:
- 目录中的文件名;如果没有更多条目则返回
false
。
closedir($handle)
: 关闭目录句柄。
mkdir()
: 创建目录
参数:
$pathname
: 要创建的目录路径。$mode
: 权限,默认为0777
。$recursive
: 是否递归创建目录,默认为false
。
返回值:
- 成功时返回
true
;失败时返回false
。
rmdir()
: 删除目录
参数:
$dirname
: 要删除的目录路径。
返回值:
- 成功时返回
true
;失败时返回false
。