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

PHP文件操作函数详解:文件读写、上传下载必备技能

发布时间:2023-06-03 08:52:27

PHP是一种服务器端脚本语言,常用于Web开发,它提供了丰富的文件操作函数,帮助我们更好地管理文件。本文将详细介绍PHP文件操作函数:文件读写、上传下载的必备技能。

一、文件读写函数

1. fopen()

fopen()函数用于打开一个文件,并返回文件指针。语法如下:

fopen($filename, $mode);

$filename是文件名,$mode是打开模式。常见的打开模式有:r(只读方式打开)、w(写方式打开,清空文件内容)、a(写方式打开,将数据追加到文件末尾)、x(写方式打开,如果文件不存在则创建文件)。

示例代码:

$fp = fopen("test.txt", "r");  //以只读方式打开文件test.txt

$fp = fopen("test.txt", "w");  //以写方式打开文件test.txt

$fp = fopen("test.txt", "a");  //以追加方式打开文件test.txt

$fp = fopen("test.txt", "x");  //以写方式打开文件test.txt,如果文件不存在则创建文件

2. fclose()

fclose()函数用于关闭打开的文件。语法如下:

fclose($fp);

$fp是文件指针。

示例代码:

$fp = fopen("test.txt", "r");  //打开文件test.txt

//读取文件内容

fclose($fp); // 关闭文件

3. fread()

fread()函数用于读取打开的文件内容。语法如下:

fread($fp,$filesize)

$fp是文件指针,$filesize是读取的文件长度(可选)。如果不指定$filesize,则读取整个文件。

示例代码:

$fp = fopen("test.txt", "r");  //打开文件test.txt

//读取文件内容

$content = fread($fp, filesize("test.txt"));  //读取整个文件

fclose($fp); //关闭文件

4. fwrite()

fwrite()函数用于向打开的文件写入内容。语法如下:

fwrite($fp,$string,$length)

$fp是文件指针,$string是要写入的内容,$length是要写入的长度(可选)。如果不指定$length,则写入整个字符串。

示例代码:

$fp = fopen("test.txt", "w");  //以写方式打开文件test.txt

fwrite($fp, "Hello World!");  //向文件中写入字符串

fclose($fp); //关闭文件

5. fgets()

fgets()函数用于按行读取打开的文件内容。语法如下:

fgets($fp,$length)

$fp是文件指针,$length是读取的行长度(可选)。如果不指定$length,则读取一整行。

示例代码:

$fp = fopen("test.txt", "r");  //以只读方式打开文件test.txt

//按行读取文件内容

while(!feof($fp)) {

    echo fgets($fp). "<br />";

}

fclose($fp); //关闭文件

6. feof()

feof()函数用于检测文件指针是否到达文件末尾。语法如下:

feof($fp)

$fp是文件指针。

示例代码:

$fp = fopen("test.txt", "r");  //以只读方式打开文件test.txt

//按行读取文件内容

while(!feof($fp)) {

    echo fgets($fp). "<br />";

}

fclose($fp); //关闭文件

二、文件上传函数

1. move_upload_file()

move_upload_file()函数用于将上传的文件移动到指定目录。语法如下:

move_upload_file($filename, $destination)

$filename是上传的文件名,$destination是要移动到的目录。

示例代码:

if (isset($_FILES['file'])) {

    $tmp_name = $_FILES['file']['tmp_name'];

    $filename = $_FILES['file']['name'];

    move_upload_file($tmp_name, "uploads/".$filename);

}

三、文件下载函数

1. header()

header()函数用于发送HTTP头。有时我们需要通过PHP程序向浏览器下载文件,可以利用header()函数实现。

示例代码:

$file = "test.zip";  //要下载的文件

header("Content-Type: application/zip");

header("Content-Disposition: attachment; filename=".$file);

header("Content-Length: ".filesize($file));

readfile($file);

结语:

以上是PHP文件操作函数的详细介绍,包括文件读写、上传、下载等常见操作。熟练掌握这些函数,对于Web开发的文件处理会非常有帮助。