- PHP 教程
- PHP - 首页
- PHP - 简介
- PHP - 安装
- PHP - 历史
- PHP - 特性
- PHP - 语法
- PHP - Hello World
- PHP - 注释
- PHP - 变量
- PHP - Echo/Print
- PHP - var_dump
- PHP - $ 和 $$ 变量
- PHP - 常量
- PHP - 魔术常量
- PHP - 数据类型
- PHP - 类型转换
- PHP - 类型混用
- PHP - 字符串
- PHP - 布尔值
- PHP - 整数
- PHP - 文件与I/O
- PHP - 数学函数
- PHP - Heredoc 和 Nowdoc
- PHP - 复合类型
- PHP - 文件包含
- PHP - 日期与时间
- PHP - 标量类型声明
- PHP - 返回类型声明
- PHP 运算符
- PHP - 运算符
- PHP - 算术运算符
- PHP - 比较运算符
- PHP - 逻辑运算符
- PHP - 赋值运算符
- PHP - 字符串运算符
- PHP - 数组运算符
- PHP - 条件运算符
- PHP - 展开运算符
- PHP - 空值合并运算符
- PHP - 比较符
- PHP 控制语句
- PHP - 决策机制
- PHP - If…Else 语句
- PHP - Switch 语句
- PHP - 循环类型
- PHP - For 循环
- PHP - Foreach 循环
- PHP - While 循环
- PHP - Do…While 循环
- PHP - Break 语句
- PHP - Continue 语句
- PHP 函数
- PHP - 函数
- PHP - 函数参数
- PHP - 按值传递
- PHP - 按引用传递
- PHP - 默认参数
- PHP - 具名参数
- PHP - 可变参数
- PHP - 返回值
- PHP - 传递函数
- PHP - 递归函数
- PHP - 类型提示
- PHP - 变量作用域
- PHP - 严格类型
- PHP - 匿名函数
- PHP - 箭头函数
- PHP - 可变函数
- PHP - 局部变量
- PHP - 全局变量
- PHP 超全局变量
- PHP - 超全局变量
- PHP - $GLOBALS
- PHP - $_SERVER
- PHP - $_REQUEST
- PHP - $_POST
- PHP - $_GET
- PHP - $_FILES
- PHP - $_ENV
- PHP - $_COOKIE
- PHP - $_SESSION
- PHP 文件处理
- PHP - 文件处理
- PHP - 打开文件
- PHP - 读取文件
- PHP - 写入文件
- PHP - 文件是否存在
- PHP - 下载文件
- PHP - 复制文件
- PHP - 追加文件
- PHP - 删除文件
- PHP - 处理CSV文件
- PHP - 文件权限
- PHP - 创建目录
- PHP - 列出文件
- 面向对象的PHP
- PHP - 面向对象编程
- PHP - 类和对象
- PHP - 构造函数和析构函数
- PHP - 访问修饰符
- PHP - 继承
- PHP - 类常量
- PHP - 抽象类
- PHP - 接口
- PHP - 特性
- PHP - 静态方法
- PHP - 静态属性
- PHP - 命名空间
- PHP - 对象迭代
- PHP - 封装
- PHP - final 关键字
- PHP - 重载
- PHP - 克隆对象
- PHP - 匿名类
- PHP Web 开发
- PHP - Web 概念
- PHP - 表单处理
- PHP - 表单验证
- PHP - 表单邮件/URL
- PHP - 完整表单
- PHP - 文件包含
- PHP - GET 和 POST
- PHP - 文件上传
- PHP - Cookie
- PHP - Session
- PHP - Session 选项
- PHP - 发送邮件
- PHP - 过滤输入
- PHP - Post-Redirect-Get (PRG)
- PHP - 闪存消息
- PHP 高级
- PHP - MySQL
- PHP.INI 文件配置
- PHP - 数组解构
- PHP - 编码规范
- PHP - 正则表达式
- PHP - 错误处理
- PHP - Try…Catch
- PHP - 调试Bug
- PHP - 面向C开发者
- PHP - 面向Perl开发者
- PHP - 框架
- PHP - Core PHP vs 框架
- PHP - 设计模式
- PHP - 过滤器
- PHP - JSON
- PHP - 异常
- PHP - 特殊类型
- PHP - 哈希
- PHP - 加密
- PHP - is_null() 函数
- PHP - 系统调用
- PHP - HTTP 认证
- PHP - 交换变量
- PHP - Closure::call()
- PHP - 过滤后的 unserialize()
- PHP - IntlChar
- PHP - CSPRNG
- PHP - 期望值
- PHP - Use 语句
- PHP - 整数除法
- PHP - 已弃用的特性
- PHP - 已移除的扩展和SAPI
- PHP - PEAR
- PHP - CSRF
- PHP - FastCGI 进程
- PHP - PDO 扩展
- PHP - 内置函数
- PHP 有用资源
- PHP - 速查表
- PHP - 问答
- PHP - 快速指南
- PHP - 在线编译器
- PHP - 有用资源
- PHP - 讨论
PHP - 文件处理
在PHP中,文件是一个资源对象,可以线性地读取或写入数据。“文件处理”是指PHP中的一组函数,这些函数允许使用PHP代码对磁盘文件执行读/写操作。
文件对象被分类为**流**。任何进行线性读/写操作的资源都是流。其他类似流的对象包括TCP套接字、标准输入流(即由“php://stdin”表示的系统键盘)、标准输出流(由“php://stdout”表示)和错误流“php://stderr”。
**注意** - 常量STDIN、STDOUT和STDERR分别代表相应的标准流。
尽管PHP被认为是用于开发Web应用程序的服务器端脚本语言,但PHP也具有命令行界面来执行控制台I/O操作。
示例
PHP中的readline()函数接受来自标准键盘的用户输入,而echo/print语句在控制台上呈现输出。
<?php $str = readline("Type something:"); echo $str; ?>
它将产生以下**输出** -
C:\xampp\php>php hello.php Type something: Are you enjoying this PHP tutorial? Are you enjoying this PHP tutorial?
示例
我们可以通过从“php://stdin”读取输入并将其输出到“php://stdout”来获得相同的效果。
<?php $f = fopen("php://stdin", "r"); echo "Type something: "; $str = fgets($f); $f1 = fopen("php://stdout", "w"); fputs($f1, $str); ?>
这里,fopen()函数用于打开**stdin**流以进行读取和**stdout**流以进行写入。
示例
PHP支持各种流协议,用于流相关的函数,例如fopen()、file_exists()等。使用php_get_wrappers()函数可以获取所有已注册包装器的列表。
<?php print_r(stream_get_wrappers()); ?>
它将产生以下**输出** -
Array ( [0] => php [1] => file [2] => glob [3] => data [4] => http [5] => ftp [6] => zip [7] => compress.zlib [8] => compress.bzip2 [9] => https [10] => ftps [11] => phar )
流被引用为“scheme://target”。例如,文件流是“file://xyz.txt”。
来自控制台的输入数据存储在计算机的主内存(RAM)中,直到应用程序运行。此后,RAM中的内存内容将被清除。
我们希望以一种可以在需要时从持久性介质(如磁盘文件)中检索到的方式来存储它。因此,我们将使用磁盘文件来读取数据,以及作为存储数据的目的地,而不是标准流(键盘用于输入,显示设备用于输出)。
除了在上述示例中使用的读写模式(与标准流的I/O操作)之外,文件流还可以以各种其他模式打开,例如“r+”和“w+”用于同时读/写,“b”用于二进制模式等。
要打开一个磁盘文件以进行读取并获取其引用指针,请使用fopen()函数。
$handle = fopen('file://' . __DIR__ . '/data.txt', 'r');
“file://”方案是默认方案。因此,特别是在处理本地文件时,可以轻松删除它。
**注意** - 建议始终关闭已打开的流。为此,请使用fclose()函数。
fclose($handle);
PHP有几个内置函数用于对文件流执行读/写操作。在后续章节中,我们将探讨文件系统函数。