PHP文件操作函数:文件读写、目录遍历及文件上传
PHP是一种非常流行的服务器端脚本语言,主要用于开发Web应用程序。它具有强大的文件操作功能,包括文件读写、目录遍历以及文件上传。本文将介绍PHP中常用的这些文件操作函数。
一、文件读写
1.fopen函数
fopen函数用于打开文件,并返回一个文件指针,供其他文件操作函数使用。它有两个参数:文件名和模式。常见的模式包括“r”表示只读、 “w”表示只写、 “a”表示追加和 “x”表示创建并写入。示例代码:
$myfile = fopen("test.txt", "w") or die("Unable to open file!");
2.fread函数
fread函数用于读取文件内容,并返回读取的字符串。它有两个参数:文件指针和读取的字节数。示例代码:
$myfile = fopen("test.txt", "r") or die("Unable to open file!");
echo fread($myfile,filesize("test.txt"));
fclose($myfile);
3.fwrite函数
fwrite函数用于向文件中写入内容。它有两个参数:文件指针和要写入的字符串。示例代码:
$myfile = fopen("test.txt", "w") or die("Unable to open file!");
$txt = "John Doe
";
fwrite($myfile, $txt);
$txt = "Jane Doe
";
fwrite($myfile, $txt);
fclose($myfile);
二、目录遍历
1.opendir函数
opendir函数用于打开一个目录,并返回一个目录句柄。它只有一个参数:目录名。示例代码:
$dir = "mydir/";
if (is_dir($dir)){
if ($dh = opendir($dir)){
while (($file = readdir($dh)) !== false){
echo "filename:" . $file . "<br>";
}
closedir($dh);
}
}
2.readdir函数
readdir函数用于读取目录中的文件,并返回文件名。它只有一个参数:目录句柄。示例代码:
$dir = "mydir/";
if (is_dir($dir)){
if ($dh = opendir($dir)){
while (($file = readdir($dh)) !== false){
echo "filename:" . $file . "<br>";
}
closedir($dh);
}
}
三、文件上传
1.move_uploaded_file函数
move_uploaded_file函数用于将上传的文件移动到指定目录。它有两个参数:上传的文件和目标路径。示例代码:
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
} else {
echo "Sorry, there was an error uploading your file.";
}
2.is_uploaded_file函数
is_uploaded_file函数用于判断文件是否是通过HTTP POST上传的。它只有一个参数:文件名。示例代码:
if(is_uploaded_file($_FILES['userfile']['tmp_name'])){
echo "The file ". $_FILES['userfile']['name'] ." has been uploaded";
}else{
echo "Error uploading file";
}
以上就是PHP中常用的文件读写、目录遍历以及文件上传函数的介绍。使用这些函数可以轻松地进行文件操作,提高Web应用程序的开发效率。
