PHP中读写文件
在PHP中读写文件,可以用到一下内置函数:
1.fopen(创建文件和打开文件)
语法:
fopen (filename,mode) |
filename,规定要打开的文件。mode,打开文件的模式,可能的值见下表。
mode | 说明 |
---|---|
"r" | 只读方式打开,将文件指针指向文件开头。 |
"r+" | 读写方式打开,将文件指针指向文件开头。 |
"w" | 写入方式打开,将文件指针指向文件开头并将文件大小截为零。如果文件不存在则尝试创建。 |
"w+" | 读写方式打开,将文件指针指向文件开头并将文件大小截为零。如果文件不存在则尝试创建。 |
"a" | 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建。 |
"a+" | 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建。 |
如果成功打开文件,fopen函数的返回值是一个文件指针,如果出错,返回 FALSE。
示例:
<?php $fp = fopen ( "test.txt" , "r" ); ?> |
2.fclose(关闭文件)
语法:
fclose(filepointer) |
filepointer,要关闭的文件指针。如果成功,fclose 函数返回 TRUE,如果失败,fclose 函数返回 FALSE。
示例:
<?php $fp = fopen ( "test.txt" , "r" ); fclose( $fp ); ?> |
3.feof(检测是否已到达文件末尾)
语法:
feof (filepointer) |
filepointer,要检测的文件指针,该指针必须指向成功打开没有关闭的文件。如果文件指针到了文件末尾或者出错时,feof函数返回 TRUE。
示例:
<?php $fp = fopen ( "test.txt" , "r" ); while (! feof ( $fp )) { echo fgets ( $fp ). "<br />" ; } fclose( $fp ); ?> |
4.fgets(从文件指针中读取一行)
语法:
fgets (filepointer) |
filepointer,要读取的文件指针。如果成功,从文件中读取一行并返回字符串,如果失败,返回 FALSE。
示例:
<?php $fp = fopen ( "test.txt" , "r" ); if ( $fp ) { for ( $i =1;! feof ( $fp ); $i ++) { echo "行" . $i . " : " . fgets ( $fp ). "<br />" ; } } else { echo "打开文件失败" ; } fclose( $fp ); ?> |
假设test.txt的内容为:
hello world hello cnblogs hello heihaozi hello everyone |
页面输出的结果为:
行1 : hello world 行2 : hello cnblogs 行3 : hello heihaozi 行4 : hello everyone |
5.fwrite(写入文件)
语法:
fwrite(filepointer,string) |
filepointer,要写入的文件指针。string,要写入的字符串。如果成功,返回写入的字符数,如果失败,返回 FALSE。
示例:
<?php $fp = fopen ( "test.txt" , "w" ); //文件被清空后再写入 if ( $fp ) { $count =0; for ( $i =1; $i <=5; $i ++) { $flag =fwrite( $fp , "行" . $i . " : " . "Hello World!\r\n" ); if (! $flag ) { echo "写入文件失败<br>" ; break ; } $count += $flag ; } echo "共写入" . $count . "个字符" ; } else { echo "打开文件失败" ; } fclose( $fp ); ?> |
页面输出的结果为:
共写入100个字符 |
test.txt文件会被写入:
行1 : Hello World! 行2 : Hello World! 行3 : Hello World! 行4 : Hello World! 行5 : Hello World! |
注:为了简化操作,部分函数的可选参数没有列出。

作者:万猫学社
出处:http://www.cnblogs.com/heihaozi/
版权声明:本文遵循 CC 4.0 BY-NC-SA 版权协议,转载请附上原文出处链接和本声明。
微信扫描二维码,关注万猫学社,回复「电子书」,免费获取12本Java必读技术书籍。
出处:http://www.cnblogs.com/heihaozi/
版权声明:本文遵循 CC 4.0 BY-NC-SA 版权协议,转载请附上原文出处链接和本声明。
微信扫描二维码,关注万猫学社,回复「电子书」,免费获取12本Java必读技术书籍。
【推荐】2025 HarmonyOS 鸿蒙创新赛正式启动,百万大奖等你挑战
【推荐】博客园的心动:当一群程序员决定开源共建一个真诚相亲平台
【推荐】开源 Linux 服务器运维管理面板 1Panel V2 版本正式发布
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步