php 文件操作

目录

1.file_xxx

2.fopen


1.file_xxx

文件读写的内容都是字符串数据格式

readfile(); //读取文件内容,并返回文件的长度

file_get_contents('文件路径'); //读取文件。支持本地文件和远程文件url

file_put_contents('文件路径', '内容'); //写入数据,保存文件

//没有文件会自动创建

//每次写入新数据都会清空原文件数据

1)file_put_contents('文件路径', '内容');

php 复制代码
<?php
header("Content-Type: text/html; charset=utf-8");
	$a = file_put_contents('1.txt','hello word');
	echo $a.'<br>';
	
	$b = file_put_contents('1.txt','this is a test');//覆盖原本的内容
	echo $b.'<br>';
?>

2)使用readfile() 读取1.txt 文件,直接打印,不需要echo

php 复制代码
<?php
header("Content-Type: text/html; charset=utf-8");
	$a = readfile('1.txt');
?>

3)file_get_contents,读取文件内容,需要 echo 打印

php 复制代码
<?php
header("Content-Type: text/html; charset=utf-8");
	$a = file_get_contents('1.txt');
	echo $a.'<br>';
?>

也可以读取网页内容,直接请求https的网址会报错,休要修改配置,1.windows下的PHP,只需要到php.ini中把 extension=php_openssl.dll前面的;删掉,重启服务就可以了。2.linux下的PHP,就必须安装 openssl模块,安装好了以后就可以访问了。

php 复制代码
<?php
header("Content-Type: text/html; charset=utf-8");
	
	//读取网页一张图片
	$b = file_get_contents('https://img-home.csdnimg.cn/images/20210114022819.png');
	//将读取的图片保存到 b.png 中
	file_put_contents('b.png',$b);
	
?>

2.fopen

|----|----------------------------------------------------------------------------------------------|---|
| 模式 | 说明 |
| r | 只读方式打开,将文件指针指向文件头。 | |
| r+ | 读写方式打开,将文件指针指向文件头。 |
| w | 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建。 |
| w+ | 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建 |
| a | 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建 ,称之为追加。 |
| a+ | 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之 |
| x | 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建 。 |
| x+ | 创建并以读写方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建 |

使用fgets()读取文件内容的话,他会自己记录读取到哪一行了,如果总共要读取五行,在中间来个 fclose(),会导致后面的读取中断而出错

php 复制代码
<?php
header("Content-Type: text/html; charset=utf-8");
	$a = fopen('1.txt','r'); //只读打开
	//$b = fread($a, 10); //以字节长度读取文件;
	$b = fgets($a);//读取一行
	echo $b.'<br>';
	$b = fgets($a);//读取第二行
	echo $b.'<br>';
	$b = fgets($a);//读取第三行
	echo $b.'<br>';
	
?>

fwrite 写,

php 复制代码
$a = fopen(1.txt, r+);
$b = fwrite($a,'you is');

fclose 关闭

相关推荐
GIS数据转换器1 小时前
地下空间综合管廊运营管理平台
大数据·开发语言·人工智能·经验分享·perl
Wang's Blog6 小时前
Java 项目实战: 交友项目:登录链路回顾与今日任务地图
java·开发语言·状态模式·交友
砚底藏山河7 小时前
python量化:行情数据回溯
java·开发语言·python·金融·maven
今年下半年7 小时前
AI智能体项目实战记录(02):初始化 Python 项目
开发语言·人工智能·python·fastapi
Williamtym7 小时前
PickGo Lab实践:用浏览器、Python和MCP串起机器人搬运仿真
开发语言·python·机器人
小程故事多_807 小时前
从 Tokenizer 到 Next Token,穿透数据流,完整理解 Transformer 底层逻辑
android·深度学习·transformer
DongQiShanRen7 小时前
六根硬件映射(四):归属澄清、两处不一致与卷十一总表
开发语言·人工智能·算法·rust·哈希算法·集成学习
CS创新实验室7 小时前
Python 对象“死“了之后去了哪?——引用计数与分代垃圾回收
开发语言·jvm·python
quantdash_cc8 小时前
Pandas 处理分钟级股票行情:从原始数据清洗到 K 线聚合
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
yu_zhidun8 小时前
企业电脑监控软件怎么选:别只看功能清单,先看这 6 个底层能力
开发语言·电脑·php·域智盾系统