资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

php读写文件操作

1,PHP如何打开文件
使用PHP函数fopen()打开一个文件,fopen()一般使用2个参数表示打开文件的路径和文件模式。比如:
$fp=fopen("../test.txt",'w');
其中 "../test.txt" 就表示打开的test.txt文件的路径(相对当前执行程序文件的路径),'w'表示以只写的方式打开该文本文件。
附录:fopen()函数的文件模式总结
r 只读——读模式,打开文件,从文件头开始读
r+ 可读可写方式打开文件,从文件头开始读写
w 只写——写方式打开文件,同时把该文件内容清空,把文件指针指向文件开始处。如果该文件已经存在,将删除文件已有内容;如果该文件不存在,则建立该文件
w+ 可读可写方式打开文件,同时把该文件内容清空,把文件指针指向文件开始处。如果该文件不存在,则建立该文件
a 追加 以只写方式打开文件,把文件指针指向文件末尾处。如果该文件不存在,则建立该文件
a+ 追加 以可读可写方式打开文件,把文件指针指向文件末尾处。如果该文件不存在,则建立该文件
b 二进制 用于于其他模式进行连接。建议使用该选项,以获得更大程度的可移植性
注意,如果fopen()函数调用失败,函数将返回false。否则返回指针数据。所以一般在打开了文件后\读写文件前需要检测下文件是否存在。
@ $fp=fopen("http://zhidao.zgsj.com/abc123",'w');
if (!$fp)
{
echo'文件不存在';
exit;
}
?>
其中@符号表示PHP将抑制所有由当前函数调用产生的错误。
2,PHP读文件
在PHP打开了文件之后就需要对文件进行读取,一般是使用fgets()函数。
该函数可以从文件中每次读取一行内容,其不断读入数据,值到遇到本行的换行符,或者全文的结束符号EOF。
介于fgets()函数只能读取一行数据,所以若需要读取文件的所有数据,须使用循环语句来完成。比如:
while (!feof($fp))
{
$bruce=fgets($fp); //php读文件
echo $bruce;
}
其中feof()函数是用来检测文件是否结束的。该函数唯一参数就是文件指针(即$fp对应打开的文件)。
当然,在PHP中还可以使用readfile()函数一次读取整个文件。该函数包括了打开文件、读取文件并输出到浏览器中和关闭文件。比如:
$bruce=readfile("http://zhidao.zgsj.com");
echo $bruce;
?>
3,PHP关闭文件
使用函数fclose()就可以将文件关闭。
二,PHP写文件
与PHP读文件一样,PHP写文件也需要:打开文件、写入数据和关闭文件。打开和关闭文件的方法上面已经说明,那PHP中写入数据到文件是怎样的呢。
使用fwrite()函数,比如fwrite(文件路径,写入内容):
$bruce=fopen("http://zhidao.zgsj.com/","r")
if(!$bruce)
{
echo'文件不存在';
exit;
}
while (!feof($bruce))
{
$rose=fgets($bruce); //php读文件
$james=fopen("index.htm","a");
fwrite($james,$rose); //php写文件
fclose($james);
}
fclose($bruce);
?>
的内容生成了本地文件
了解了PHP的读写文件,就可以把最简单的数据存入文本保存了。
=============================
其他有用的文件函数:
file_exists():查看文件是否存在,返回布尔值
filesize():查看文件大小,可直接echo输出
unlink():删除文件,注意PHP中没有delete函数。

创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站建设、成都网站制作、平度网络推广、小程序制作、平度网络营销、平度企业策划、平度品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们大的嘉奖;创新互联为所有大学生创业者提供平度建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com
名称栏目:php读写文件操作
网页网址:http://cdkjz.cn/article/djces.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220