PHP文件相关函数大总结

PHP中与文件相关的函数:

以下示例均以读取example.txt为例:
example.txt的内容:

this is a txt.
这是一个文件

1 .使用 file_get_contents 读取整个文件内容:
$fileContent = file_get_contents('example.txt');
echo $fileContent;

测试效果:
在这里插入图片描述
file_put_contents()函数可以用来将一个字符串写入文件。
file_put_contents()函数接受两个参数,第一个参数是文件名,第二个参数是要写入的字符串。如果文件不存在,则会创建一个新文件。

file_put_contents(“file.txt”, “Hello World!”);

在上面的例子中,我们向文件名为file.txt的文件中写入了一行字符串Hello World!。

2. 使用 file 逐行读取整个文件内容:
$fileLines = file('example.txt');
foreach ($fileLines as $line) {echo $line;
}

测试效果:
在这里插入图片描述

3. 使用 fread 逐块读取文件内容:
$handle = fopen('example.txt', 'r');
$content = fread($handle, filesize('example.txt'));
fclose($handle);
echo $content;

测试效果:
在这里插入图片描述

4. 使用 fgets 逐行读取文件内容:
$handle = fopen('example.txt', 'r');
while (!feof($handle)) {$line = fgets($handle);echo $line;
}
fclose($handle);

测试效果:
在这里插入图片描述

6. 使用 file_get_contents()将 example.txt 文件的整个内容作为字符串读取:
<?php
$file = 'example.txt';
$content = file_get_contents($file);
echo $content;
?>

测试效果:
在这里插入图片描述

7. 使用 readfile()将直接输出 example.txt 文件的内容:
<?php
$file = 'example.txt';
readfile($file);
?>

测试效果:
在这里插入图片描述

8. 使用 readfile()将直接输出 example.txt 文件的内容:
<?php
$file = 'example.txt';
readfile($file);
?>

测试效果:
在这里插入图片描述

其他补充
  1. fopen()函数
    fopen()函数用于打开一个文件,并返回一个文件指针。这个指针可以用于读取或写入文件。fopen()函数接受两个参数,第一个参数是文件名,第二个参数是文件打开模式。

$file = fopen(“file.txt”, “r”);

在上面的例子中,我们打开了一个名为file.txt的文件,并将文件指针赋值给变量$file。打开模式为r,表示我们只是要从文件中读取数据,而不需要写入数据。打开模式还可以是w(写入模式)、a(追加模式)等等。

  1. fread()函数
    fread()函数用于从打开的文件读取数据。fread()函数接受两个参数,第一个参数是文件指针,第二个参数是读取的字节数。如果不指定第二个参数,则默认读取整个文件。

$ data = fread($file, filesize(“file.txt”));

在上面的例子中,我们从指针为 f i l e 的文件中读取了整个文件的数据,并将数据赋值给变量 file的文件中读取了整个文件的数据,并将数据赋值给变量 file的文件中读取了整个文件的数据,并将数据赋值给变量data。filesize()函数用于获取文件的大小。

  1. fwrite()函数
    fwrite()函数用于向打开的文件写入数据。fwrite()函数接受两个参数,第一个参数是文件指针,第二个参数是要写入的数据。如果要写入的数据包含多行,可以使用PHP的\\n换行符。

fwrite($file, “Hello World!”);

在上面的例子中,我们向指针为$file的文件中写入了一行字符串Hello World!。

  1. fclose()函数
    fclose()函数用于关闭一个打开的文件。关闭文件之后,文件指针将不再可用。建议在使用完文件之后立即关闭文件。

fclose($file);

在上面的例子中,我们关闭了指针为$file的文件。

  1. file_exists()函数
    file_exists()函数用于检查文件是否存在。file_exists()函数接受一个参数,即要检查的文件名。

if (file_exists(“file.txt”)) {
echo “文件存在”; } else {
echo “文件不存在”; }

在上面的例子中,我们检查了文件名为file.txt的文件是否存在。如果文件存在,则输出文件存在,否则输出文件不存在。
6. pathinfo()函数
pathinfo()函数可以用来获取一个文件的路径信息。pathinfo()函数接受一个参数,即要获取信息的文件名。

$info = pathinfo(“file.txt”);
echo $info[“dirname”]; // 输出文件所在的目录名
echo $info[“basename”]; // 输出文件名
echo $info[“extension”]; // 输出文件扩展名

  1. glob()函数
    glob()函数可以用来获取一个目录中的所有文件。glob()函数接受一个参数,即要获取的目录名。

$files = glob(“*.txt”);

在上面的例子中,我们获取了当前目录下所有扩展名为.txt的文件。glob()函数返回一个包含所有文件名的数组。

  1. unlink()函数
    unlink()函数用于删除文件。unlink()函数接受一个参数,即要删除的文件名。

unlink(“file.txt”);

在上面的例子中,我们删除了文件名为file.txt的文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/247896.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Flink问题解决及性能调优-【Flink rocksDB读写state大对象导致背压问题调优】

RocksDB是Flink中用于持久化状态的默认后端&#xff0c;它提供了高性能和可靠的状态存储。然而&#xff0c;当处理大型状态并频繁读写时&#xff0c;可能会导致背压问题&#xff0c;因为RocksDB需要从磁盘读取和写入数据&#xff0c;而这可能成为瓶颈。 遇到的问题 Flink开发…

MySql8的简单使用(1.模糊查询 2.group by 分组 having过滤 3.JSON字段的实践)

MySql8的简单使用&#xff08;1.模糊查询 2.group by 分组 having过滤 3.JSON字段的实践&#xff09; 一.like模糊查询、group by 分组 having 过滤 建表语句 create table student(id int PRIMARY KEY,name char(10),age int,sex char(5)); alter table student add height…

【C/C++ 01】初级排序算法

排序算法通常是针对数组或链表进行排序&#xff0c;在C语言中&#xff0c;需要手写排序算法完成对数据的排序&#xff0c;排序规则通常为升序或降序&#xff08;本文默认为升序&#xff09;&#xff0c;在C中&#xff0c;<algorithm>头文件中已经封装了基于快排算法的 st…

记录我的历程

1、2024年1月30号更新 从2024年1月22号开始复更&#xff0c;已添加20篇文章&#xff0c; 前一阶段&#xff1a;排名1502450、原力分2、粉丝3人

PGsql 解析json及json数组

创建测试数据 drop table if exists json_test; create table json_test as select 111 as id, {"nodes":{"1692328028076":{"nodeId":"1692328028076","nodeName":"测试表1","nodeType":"DATACO…

STM32 OV7725摄像头模块识别颜色物体(1)--HSL二值化和腐蚀中心算法,并用串口输出数据

目录 前言 一、摄像头采集数据流程 二、如何将图像显示到电脑上 三、图像二值化 1、什么是RGB? 2、RGB565转RGB888 I、RGB565和RGB888的区别 II、代码 3、RGB转HSL I、什么是HSL II、转换公式 III、代码 3、输出一张摄像头二值化图片 I、原理 II、代码 四、简单的物体识别 1、…

ElasticSearch搜索引擎入门到精通

ES 是基于 Lucene 的全文检索引擎,它会对数据进行分词后保存索引,擅长管理大量的数据,相对于 MySQL 来说不擅长经常更新数据及关联查询。这篇文章就是为了进一步了解一下它,到底是如何做到这么高效的查询的。 在学习其他数据库的时候我们知道索引是一个数据库系统极其重要…

数字图像处理(实践篇)三十六 OpenCV-Python 使用ORB和BFmatcher对两个输入图像的关键点进行匹配实践

目录 一 涉及的函数 二 实践 ORB(Oriented FAST and Rotated BRIEF)是一种特征点检测和描述算法,它结合了FAST关键点检测和BRIEF描述子。ORB算法具有以下优势: ①实时性:能够在实时应用中进行快速的特征点检测和描述。 ②

[C++]使用纯opencv部署yolov8旋转框目标检测

【官方框架地址】 https://github.com/ultralytics/ultralytics 【算法介绍】 YOLOv8是一种先进的对象检测算法&#xff0c;它通过单个神经网络实现了快速的物体检测。其中&#xff0c;旋转框检测是YOLOv8的一项重要特性&#xff0c;它可以有效地检测出不同方向和角度的物体。…

git用法总结

以gitee为例&#xff0c;GitHub也可参考本文 创建远程仓库 在自己的gitee主页 创建本地仓库 在文件夹下&#xff0c;右键→git bash here git init添加gitignore vi .gitignoregitignore里的内容根据自己实际情况设置&#xff0c;这里举个例子 # #开头的是注释 # Prer…

Oracle篇—分区索引的重建和管理(第三篇,总共五篇)

☘️博主介绍☘️&#xff1a; ✨又是一天没白过&#xff0c;我是奈斯&#xff0c;DBA一名✨ ✌✌️擅长Oracle、MySQL、SQLserver、Linux&#xff0c;也在积极的扩展IT方向的其他知识面✌✌️ ❣️❣️❣️大佬们都喜欢静静的看文章&#xff0c;并且也会默默的点赞收藏加关注❣…

写静态页面——魅族导航_前端页面练习

0、效果&#xff1a; 1、html代码&#xff1a;&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><…

Spring Boot通过配置文件支持数据库自定义表名

直接上干货&#xff1a; 例如一个叫xxx的项目&#xff0c;yml文件里加上这段 xxxproject:db:xxxTable: xxx_dbname #自定义的数据库表名创一个Configuration类放表名和Mapper // XxxProjectAutoConfiguration.javaConfiguration MapperScan(basePackages "cn.com.xxxp…

【vue】defineModel在vue3.4中的最新用法和详解

在2023年12月28日&#xff0c;尤大发布了vue3.4版本&#xff0c;这个版本主要对一些实验性特性的改进&#xff08;比如defineModel&#xff09;&#xff0c;大量重写了模板编译器并重构了响应式系统&#xff0c;可以说是大大提升了运行速度和效率。 之前在vue3.3中defineModel…

分布式ID是什么,以美团Leaf为例改造融入自己项目【第十一期】

前言 在日常开发中&#xff0c;主键id应用是非常广泛的&#xff0c;但是当涉及到分布式系统的时候&#xff0c;往往需要使用到分布式id&#xff0c;每一个服务里面一套生成规则的不易管理&#xff0c;容易引发冲突。我的IM聊天系统中使用分布式id来生成消息唯一键,为后面幂等做…

Flink CEP实现10秒内连续登录失败用户分析

1、什么是CEP&#xff1f; Flink CEP即 Flink Complex Event Processing&#xff0c;是基于DataStream流式数据提供的一套复杂事件处理编程模型。你可以把他理解为基于无界流的一套正则匹配模型&#xff0c;即对于无界流中的各种数据(称为事件)&#xff0c;提供一种组合匹配的…

网络防御安全:2-6天笔记

第二章&#xff1a;防火墙 一、什么是防火墙 防火墙的主要职责在于&#xff1a;控制和防护。 防火墙可以根据安全策略来抓取流量之后做出对应的动作。 二、防火墙的发展 区域&#xff1a; Trust 区域&#xff0c;该区域内网络的受信任程度高&#xff0c;通常用来定义内部…

单片机介绍

本文为博主 日月同辉&#xff0c;与我共生&#xff0c;csdn原创首发。希望看完后能对你有所帮助&#xff0c;不足之处请指正&#xff01;一起交流学习&#xff0c;共同进步&#xff01; > 发布人&#xff1a;日月同辉,与我共生_单片机-CSDN博客 > 欢迎你为独创博主日月同…

electron-builder vue 打包后element-ui字体图标不显示问题

当使用electron打包完成的时候&#xff0c;启动项目发现使用的element-ui字体图标没显示都变成了小方块&#xff0c;并出现报错&#xff0c;请看下图&#xff1a; 解决方法&#xff1a; 在vue.config.js中设置 customFileProtocol字段&#xff1a;pluginOptions: {electronBui…

两个近期的计算机领域国际学术会议(软件工程、计算机安全):欢迎投稿

近期&#xff0c;受邀担任两个国际学术会议的Special session共同主席及程序委员会成员&#xff08;TPC member&#xff09;&#xff0c;欢迎广大学界同行踊跃投稿&#xff0c;分享最新研究成果。期待这个夏天能够在夏威夷檀香山或者加利福尼亚圣荷西与各位学者深入交流。 SERA…