知识点:

一、fopen(),文件打开函数,读写参数有:

1、R  : 只读,指针在文件开头

2、r+:读写,指针同上

3、W :只写,写入前会删除文件内容,然后指针回到文件开头,文件不存在则创建

4、w+: 读写,其他同上

5、A: 只写,指针在文件末尾,文件不存在则创建,注意:此模式为“追加”

6、a : 读写, 同上

7、x:创建并打开文件(方式:只写),如果文件已存在,则返回一个E_warning错误

8、x+:创建并打开文件(方式:读写),其他同上

总结:R方式读写不错,W会删除文件内容,A指针会出现在文件末端,写操作为追加,所以指针偏移函数fseek失效,X一般为新建文件

二、读取文件:file() 与file_get_contents()

file()返回数组,file_get_contents()返回字符串

三、文件写操作:fwrite()

第一个参数为文件指针,第二个参数为传入的字符串

注意:如果文件指针所在的位置有数据,则采用字符串覆盖的方式,以此类推,后面的数据也会被覆盖,直到传入的字符串写完。

四、文件指针偏移:fseek()

第一个参数为文件指针,第二个参数为偏移量(int类型)字节,第三个参数决定文件指针的初始位置,配合第二个参数决定最终指针的位置。

第三个参数的可用选项:

①、SEEK_CUR:指针当前位置

②、SEEK_END:文件末尾,如果想向前偏移,偏移量必须为负数。

③、SEEK_SET:文件开始位置

⑤、获取偏移量:ftell()

参数为文件指针

代码:

<?php

header("Content-type:text/html;charset=gbk");
$jubing = fopen("C:\Users\Administrator\Desktop/test.txt",'r+');
$str = mb_convert_encoding("45",'gbk','utf-8');
fseek($jubing,3,SEEK_CUR);
fwrite($jubing,$str);
$newstr = file_get_contents("C:\Users\Administrator\Desktop/test.txt");
echo $newstr;
var_dump(fclose($jubing));//文件关闭成功 ?>

 文件初始内容:

文件读写后内容:

PHP文件操作函数及文件指针理解的更多相关文章

  1. Unix无缓冲文件操作函数、文件信息查询

    问题描述:         Unix无缓冲文件操作函数.文件信息查询 问题解决:        struct stat 结构体信息: 具体代码: 具体源文件:

  2. 文件操作(FILE)与常用文件操作函数

    文件 1.文件基本概念 C程序把文件分为ASCII文件和二进制文件,ASCII文件又称文本文件,二进制文件和文本文件(也称ASCII码文件)二进制文件中,数值型数据是以二进制形式存储的, 而在文本文件 ...

  3. 总结文件操作函数(二)-C语言

    格式化读写: #include <stdio.h> int printf(const char *format, ...);                   //相当于fprintf( ...

  4. Delphi文件操作函数

    文件是同一种类型元素的有序集合,是内存与外设之间传输数据的渠道.文件的本质是一个数据流,所有的文件实际上是一串二进制序列.文件管理包括:1.文件操作.2.目录操作.3.驱动器操作.三部分. 1.常见文 ...

  5. PHP常用的文件操作函数集锦

    以下是个人总结的PHP文件操作函数.当然,这只是部分,还有很多,我没有列出来. 一 .解析路径: 1 获得文件名:basename();给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件 ...

  6. C语言样式的文件操作函数

    使用C语言样式的文件操作函数,需要包含stdio.h头文件. 1.打开文件的函数: //oflag的取值为“w”或“r”,分别表示以写或读的方式打开 FILE* fd = fopen(filename ...

  7. C语言文件操作函数

    C语言文件操作函数大全 clearerr(清除文件流的错误旗标) 相关函数 feof表头文件 #include<stdio.h> 定义函数 void clearerr(FILE * str ...

  8. 总结文件操作函数-文件夹(三)-C语言

    获取.改变当前文件夹: 原型为: #include <unistd.h>   //头文件 char *getcwd(char *buf, size_t size); //获取当前文件夹.相 ...

  9. 【阅读笔记】《C程序员 从校园到职场》第六章 常用文件操作函数 (Part 1)

    参考链接:https://blog.csdn.net/zhouzhaoxiong1227/article/details/24926023 让你提前认识软件开发(18):C语言中常用的文件操作函数总结 ...

随机推荐

  1. JDBC完美连接方法

    jdbc:mysql://localhost:3306:test这句里面分如下解析:jdbc:mysql:// 是指JDBC连接方式:localhost: 是指你的本机地址:3306 SQL数据库的端 ...

  2. 3.2.5 Magic Squares 魔板

    3.2.5 Magic Squares 魔板 成功地发明了魔方之后,鲁比克先生发明了它的二维版本,称作魔板.这是一张有8个大小相同的格子的魔板: 1 2 3 4 8 7 6 5 我们知道魔板的每一个方 ...

  3. mysql基础 日期类型

  4. django+xadmin在线教育平台(八)

    4-5 user modesl.py设计 循环引用: 设计app时每个app都有model   mark 如图:我们在user中定义usercourse记录用户学习的课程.会有两个外键:user和co ...

  5. 基于Select模型通信程序的编写,编译和执行

    任务目标 编写Win32程序模拟实现基于Select模型的两台计算机之间的通信,要求编程实现服务器端与客户端之间双向数据传递.客户端向服务器端发送"计算从1到100的奇数和",服务 ...

  6. JAVA / MySql 编程—— 第四章 高级查询(二)

    1.        EXISTS和NOT EXISTS子查询:EXISTS关键字用来检测数数据库对象是否存在.                  ★EXISTS和NOT EXISTS的结果只取决于是否 ...

  7. 【Ecshop】商品数据采集扩展

    一个自用的Ecshop商品数据采集程序 ->到此下载

  8. java动态返回一个大对象里多个小对象map返回,el表达式用c:set拼接

    基于堆内存,先把map放到返回值里 Map _map=new HashMap(); modelAndView.addObject("pledgeInsurance",_map);/ ...

  9. request中的那些方法到底是干什么的?

    最近做Java Web项目,在.jsp页面和servlet之间request和response还是有些混淆,查阅了一些资料,总结如下,方便以后使用: 首先,servlet接口是最基本的,提供的五个方法 ...

  10. PHP开发搭建环境二:开发工具PhpStorm安装、激活以及配置

    关于php的开发工具很多,目前市面上最好用最强大的莫过于PhpStorm这款开发神器了,但是鉴于很多开发者朋友在网站上下载的PhpStorm开发工具不能用,或者使用起来很不方便,笔者把最好用的下载地址 ...