PHP fopen()函数用于打开文件,它需要两个参数,首先说明文件名,然后说明操作方式。
可以将文件模式指定为此表中的六个模式之一。
Sr.No | Mode & Purpose |
---|---|
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()函数关闭文件。
以下示例将文本文件的内容分配给变量,然后将这些内容显示在网页上。
<html> <head> <title>读取文件 using PHP</title> </head> <body> <?php $filename="tmp.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 ( "<pre>$filetext</pre>" ); ?> </body> </html>
它将产生以下输出-
使用PHP fwrite()函数可以编写新文件或将文本附加到现有文件中,该函数需要两个参数来指定文件指针和要写入的数据字符串。
下面的示例创建一个新的文本文件,然后写入文本标题。关闭此文件后,使用 file_exist()函数确认该文件的存在,该函数将文件名作为参数
<?php $filename="/home/user/guest/newfile.txt"; $file=fopen( $filename, "w" ); if( $file == false ) { echo ( "Error in opening new file" ); exit(); } fwrite( $file, "This is a simple test\n" ); fclose( $file ); ?> <html> <head> <title>写文件 using PHP</title> </head> <body> <?php $filename="newfile.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"); ?> </body> </html>
它将产生以下输出-
在 PHP File System Function 一章中,无涯教程介绍了与文件输入和输出有关的所有函数。
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)
深入浅出区块链 -〔陈浩〕
硅谷产品实战36讲 -〔曲晓音〕
持续交付36讲 -〔王潇俊〕
如何做好一场技术演讲 -〔极客时间〕
Vim 实用技巧必知必会 -〔吴咏炜〕
重学线性代数 -〔朱维刚〕
如何成为学习高手 -〔高冷冷〕
云原生架构与GitOps实战 -〔王炜〕
大型Android系统重构实战 -〔黄俊彬〕
深圳SEO优化公司陇南阿里店铺托管乌海高端网站设计六安SEO按效果付费报价安阳至尊标王多少钱黄冈网站优化按天计费报价清徐网站建设设计价格赤峰网站建设设计推荐萍乡网站定制张掖seo网站优化报价怀化网站优化按天扣费推荐阜新seo网站优化廊坊seo网站优化推荐郴州百度标王报价随州百度竞价多少钱福州网络营销公司黔东南百度关键词包年推广推荐伊春营销网站多少钱桐城建设网站价格横岗外贸网站设计公司金昌外贸网站建设报价拉萨网站推广哪家好天门百搜标王公司河源网络广告推广推荐鸡西SEO按天扣费推荐玉溪网站设计模板推荐周口百姓网标王报价阜阳seo排名报价荆州企业网站改版安顺优秀网站设计推荐雅安网站优化按天收费推荐歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运