文件的基本操作:(更多

fopen():文件打开
$file = fopen("file.txt","r+");

fopen()函数的参数是目标文件的路径和文件的读写模式;同时fopen函数也会在打开文件时候发现没有文件会自动创建一个文件但是模式必须是读写或写入的模式

fread():文件读取
fread($file,filesize("file.txt"));

fread()函数的参数是需要读取的文件和文件读取的最大字节数

fgets():读取单行文件
fgets($file);

读取文件中的单行文字,没读取一次就会将文件指针指向下一行的首部

fgetc():读取单个字符
fgetc($file);

fgetc()函数将会逐个字符的读取内容输出;常见的是结合while循环输出,利用EOF检查函数feof()来控制循环

fclose():文件关闭
fclose($file);

文件一旦被打开在原则上一定要在使用后关闭它

fopen()函数打开的文件赋值给一个变量file,相当于file就是文件的地址指针,fread()函数依据file的地址指针可以找到自己需要读取的文件(同理,在fread()函数中可以直接使用fopen()函数,直接打开文件,告诉fread()文件地址,然后函数执行自己的人物)

PHP文件检查(EOF):
feof():检查是否达到文件尾部
feof($file);

feof()函数的主要功能是检查文件中的指针是否到达文件末尾,可以借此来解决未知大小的文件读写防止越界的问题

fwrite():写入文件
	<?php
$file = fopen("/File.txt","w");// w:文件写入模式;如果没有该文件就会自动创建文件
$txt = "Chinawangyuyang\r\nGMAIL.com";//以String类写入,并运用转义转义字符实现简单排版
fwrite($file, $txt);//参数:写入路径,写入的内容
fclose($file);
?>

fwrite()函数参数主要是写入的文件地址和需要写入的字符串或字符类型的变量

注意: 文件写入和文件的操作(读写)模式有着非常重要的关系;fwrite()函数只负责向文件写入数据,而fopen()函数每次打开文件的时候就会将指针指向文件首部或是直接将新的数据覆盖原有的所有数据或部分数据;所以我们在对现有文件不覆盖进行文件数据增删的时候需要注意fopen()函数选择的读写模式为追加或者是指定文件指针的位置,从指针位置开始写入数据信息;

其它文件函数:

file_exists():文件是否存在
file_exists("file.txt");

(不打开文件)检测文件是否存在;参数是文件的相对或绝对地址路径;返回布尔值

filesize():文件字节大小
filesize("file.txt");

检测文件的字节大小,参数是文件的相对或绝对地址路径;

unlink():删除文件
unlink("file.txt");

删除指定的文件;参数是文件的相对或绝对地址路径;返回布尔值

文件指针定位:
rewind():首部
  • 将文件指针复位到文件的首部
ftell():返回位置
  • 将文件指针的当前位置返回
fseek():指定位置
  • 将指针移动到指定的位置

    int fseek( resource fp , int offset [, int whence]);

    fseek()函数主要的功能是将文件指针fp从whence位置移动offset字节;(whence默认是文件首部 [SEEK_SET];当前指针位置[SEEK_CUR];文件尾部 [SEEK_END])

flock():文件锁定
bool flock( resource fp , int operation [, int &wouldblock]);

*通过flock()函数来完成对文件锁定;主要参数有:指定文件指针,以及一个需要锁定类型的常数;返回布尔值(是否成功锁定文件);

PHP文件基础操作的更多相关文章

  1. Python文件基础操作(IO入门1)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6422270.html 本文出自:[Edwin博客园] Python文件基础操作(IO入门1) 1. pyth ...

  2. php之文件基础操作

    在php中对文件的基础操作非常的简单,php提供的函数粗略的用了一遍. file_get_contents():可以获取文件的内容获取一个网络资源的内容,这是php给我封装的一个比较快捷的读取文件的内 ...

  3. python编辑修改haproxy配置文件--文件基础操作

    一.需求分析 有查询,删除,添加的功能 查询功能:查询则打印查询内容,如果不存在也要打印相应的信息 删除功能:查询到要删除内容则删除,打印信息. 添加功能:同上. 二.流程图 三.代码实现 本程序主要 ...

  4. Python 第三篇(上):python文件基础操作、json模块、lambda、map、filter、reduce和函数位置参数

    python一切皆对象,linux一切皆文件,python操作文件是很常见的O/I操作,其内置来open()函数可以完成文件的基本操作: 一:使用内置open()函数操作文件,基本语法如下: with ...

  5. Python之路 day2 文件基础操作

    #!/usr/bin/env python # -*- coding:utf-8 -*- #Author:ersa ''' #f,文件句柄;模式 a : append 追加文件内容 f = open( ...

  6. Linux目录结构及文件基础操作

    一.Linux目录结构 windows系统中主要以存储介质为主(磁盘). UNIX和Linux系统中主要是以目录为主(以树形目录结构的形式构建整个系统). 1. FHS(Filesystem Hier ...

  7. delphi 基础之三 文件流操作

    文件流操作 Delphi操作流文件:什么是流?流,简单来说就是建立在面向对象基础上的一种抽象的处理数据的工具.在流中,定义了一些处理数据的基本操作,如读取数据,写入数据等,程序员是对流进行所有操作的, ...

  8. day08文件操作的三步骤,基础的读,基础的写,with...open语法,文件的操作模式,文件的操作编码问题,文件的复制,游标操作

    复习 ''' 类型转换 1.数字类型:int() | bool() | float() 2.str与int:int('10') | int('-10') | int('0') | float('-.5 ...

  9. ndk学习之c++语言基础复习----C++容器、类型转换、异常与文件流操作

    继续来复习C++,比较枯燥,但是这是扎实掌握NDK开发的必经之路,不容小觑. 容器: 容器,就是用来存放东西的盒子. 常用的数据结构包括:数组array, 链表list, 树tree, 栈stack, ...

随机推荐

  1. Hadoop自学系列集(三) ---- Hadoop安装

    这节就开始讲述Hadoop的安装吧.在这之前先配置下SSH免密码登录,为什么需要配置这个呢?大家都知道Hadoop集群中可能有几十台机器甚至是上千台机器,而每次启动Hadoop都需要输入密码才能够登录 ...

  2. Kafka服务不可用(宕机)问题踩坑记

    背景 某线上日志收集服务报警,打开域名报502错误码. 收集服务由2台netty HA服务器组成,netty服务器将客户端投递来的protobuf日志解析并发送到kafka,打开其中一个应用的日志,发 ...

  3. ArrayList源码分析--jdk1.8

    ArrayList概述   1. ArrayList是可以动态扩容和动态删除冗余容量的索引序列,基于数组实现的集合.  2. ArrayList支持随机访问.克隆.序列化,元素有序且可以重复.  3. ...

  4. word 文档导出 (freemaker+jacob)--java开发

    工作中终于遇到了 需要导出word文旦的需求了.由于以前没有操作过,所以就先百度下了,基本上是:博客园,简书,CDSN,这几大机构的相关帖子比较多,然后花了2周时间 才初步弄懂.  学习顺序: 第一阶 ...

  5. Java悲观锁Pessimistic-Lock常用实现场景

    1:商品库存秒杀采用悲观锁Pessimistic-Lock主要好处是安全,充分利用了数据库的性能来做的一种锁机制. 悲观锁的实现: (1)环境:mysql + jdbctemplate (2)商品表g ...

  6. JavaFX 集成 Sqlite 和 Hibernate 开发爬虫应用

    目录 [隐藏] 0.1 前言: 0.2 界面 0.3 Maven 环境 0.4 项目结构 0.5 整合 Hibernate 0.5.1 SQLiteDialect.java 数据库方言代码 0.5.2 ...

  7. 算法与数据结构基础 - 链表(Linked List)

    链表基础 链表(Linked List)相比数组(Array),物理存储上非连续.不支持O(1)时间按索引存取:但链表也有其优点,灵活的内存管理.允许在链表任意位置上插入和删除节点.单向链表结构一般如 ...

  8. 【原创】原来你竟然是这样的Chrome?!Firefox笑而不语

    书接上文 上一篇文章<[原创]用事实说话,Firefox 的性能是 Chrome 的 2 倍,Edge 的 4 倍,IE11 的 6 倍!>,我们对比了不同浏览器下FineUIPro一个页 ...

  9. IE浏览器主页被篡改为2345,针对一般解决办法无法解决的情况

    1.注册表修改 按微软键+R  输入regedit 弹出注册表.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN 将右侧的Sta ...

  10. 6、高级的数组的复制(test4.java)

    这里指的高级,并不是过么高大上,而是说我们可以调用系统函数,直接对数组进行复制,并且这个函数的强大并不止局限于,对数组的复制,而且可以对数组进行截取,在指定位置插入或删除某个元素. 本篇只介绍数组的复 ...