欢迎访问宙启技术站
智能推送

PHP文件操作函数:文件读写、目录遍历及文件上传

发布时间:2023-06-23 02:18:26

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应用程序的开发效率。