php操作文件,PHP文件操作

本章将解释以下与文件相关的函数功能 -

打开文件

读取文件

写入文件

关闭文件

打开和关闭文件

PHP的fopen()函数用来打开一个文件。 它需要两个参数,第一个是文件名,然后是在哪个模式下操作。

文件模式可以被指定为操作模式的六个选项之一。

编号

模式

说明

1

r

打开文件为只读。将文件指针放在文件的开头。

2

r+

打开文件进行读写。将文件指针放在文件的开头。

3

w

打开文件只写。将文件指针放在文件的开头。并截断文件为零长度。 如果文件不存在,则会尝试创建文件。

4

w+

仅打开文件以进行读取和写入。将文件指针放置在文件的开头。并截断文件为零长度。 如果文件不存在,则会尝试创建文件。

5

a

打开文件以进行写入。将文件指针放在文件末尾。 如果文件不存在,则会尝试创建文件。

6

a+

打开文件只能读取和写入。将文件指针放在文件末尾。如果文件不存在,则会尝试创建文件。

如果尝试打开文件失败,则fopen返回false值,否则返回文件指针,用于进一步读取或写入该文件。

在对打开的文件进行更改之后,使用fclose()函数关闭文件是很重要的。fclose()函数需要一个文件指针作为参数,在关闭成功时返回true,否则返回false。

读取文件

使用fopen()函数打开文件,就可以使用名为fread()的函数来读取文件。 这个函数需要两个参数。 这些必须是文件指针和以字节表示的文件长度。

文件长度可以通过使用文件名作为参数的filesize()函数计算得到,并返回以字节表示的文件大小。

下面是用PHP读取文件所需的步骤。

使用fopen()函数打开一个文件。

使用filesize()函数获取文件的长度。

使用fread()函数读取文件的内容。

使用fclose()函数关闭文件。

以下示例将文本文件的内容分配给变量,然后在网页上显示文件的内容。

读取文件示例

$filename = "test.txt";

$file = fopen( $filename, "r" );

if( $file == false ) {

echo ( "Error in opening file" );

exit();

}

$filesize = filesize( $filename );

$filetext = fread( $file, $filesize );

fclose( $file );

echo ( "File size : $filesize bytes" );

echo ( "

$filetext
" );

?>

它会产生以下结果 -

d10868a5df5d41b6b1ccf4b1abb46dff.png

写入文件

可以使用PHP的fwrite()函数写入新文件或将文本附加到现有文件。这个函数需要两个参数指定一个文件指针和要写入的数据字符串。 可选地,可以包含第三个整数参数来指定要写入的数据的长度。如果包含第三个参数,则在达到指定的长度后写入将停止。

以下示例创建一个新的文本文件,然后在其中写入一个简短的文本标题。 在关闭这个文件之后,使用file_exist()函数确认它的存在,file_exist()函数将文件名作为参数。

$filename = "writefile.txt";

$file = fopen( $filename, "w" );

if( $file == false ) {

echo ( "Error in opening new file" );

exit();

}

fwrite( $file, "This is a simple test

" );

fclose( $file );

?>

写入文件示例

$filename = "writefile.txt";

$file = fopen( $filename, "r" );

if( $file == false ) {

echo ( "Error in opening file" );

exit();

}

$filesize = filesize( $filename );

$filetext = fread( $file, $filesize );

fclose( $file );

echo ( "File size : $filesize bytes.
" );

echo ( "$filetext
" );

echo("file name: $filename");

?>

执行上面示例代码,得到以下结果 -

d9d21a7079356bf95861fe994f0d530e.png

¥ 我要打赏

纠错/补充

收藏

下一篇:哥,这回真没有了

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值