php读取文件feof,PHP使用feof()函数读文件的方法

PHP使用feof()函数读文件的方法

本文实例讲述了PHP使用feof()函数读文件的方法。分享给大家供大家参考。具体用法如下:

feof应用于PHP 4, PHP 5

-用来测试文件指针是否到了文件结束的位置。

如果服务器没有关闭由 fsockopen() 所打开的连接,feof() 会一直等待直到超时而返回TRUE。默认的超时限制是 60 秒,可以使用 stream_set_timeout() 来改变这个值。

文件指针必须是有效的,必须指向由 fopen() 或fsockopen() 成功打开的文件(并还未由fclose() 关闭)。

如果传递的文件指针无效可能会陷入无限循环中,因为 EOF 不会返回 TRUE。

Example #1 使用无效文件指针的 feof() 例子:

复制代码 代码如下:

// 如果文件不可读取或者不存在,fopen 函数返回 FALSE

$file = @fopen("no_such_file", "r");

// 来自 fopen 的 FALSE 会发出一条警告信息并在这里陷入无限循环

while (!feof($file)) {

}

fclose($file);

?>

例子:

复制代码 代码如下:

$file = fopen($_SERVER['DOCUMENT_ROOT']."/me/test.txt", "r");

//输出文本中所有的行,直到文件结束为止。

while(! feof($file))

{

echo fgets($file). "
";

}

fclose($file);

?>

输出:

Hello, this is a test file.

There are three lines here.

This is the last line.

希望本文所述对大家的PHP程序设计有所帮助。

时间: 2014-11-06

本文实例讲述了PHP中的feof()函数的用法,针对feof()函数进行了一定的测试,很有实用价值.具体分析如下: 本文实例运行环境: OS:Mac OS X 10.8.4 PHP:5.3.15 在PHP的官方手册中,函数feof()下面的讨论不少,对此做了一些相关的测试如下. 测试代码如下: <?php print <<

通常来说在php读取大文件的时候,我们采用的方法一般是一行行来讲取,而不是一次性把文件全部写入内存中,这样会导致php程序卡死,下面就给大家介绍这样一个例子. 读取大文件最后几行数据: <?php /** * 取文件最后$n行 * * @param string $filename 文件路径 * @param int $n 最后几行 * @return mixed false表示有错误,成功则返回字符串 */ function FileLastLines($filename, $n){ if(!

如果加载的文件特别大时,如几百M,上G时,这时性能就降下来了,那么PHP里有没有对大文件的处理函数或者类呢? 答案是:有的.PHP真的越来越"面向对象"了,一些原有的基础的SPL方法都开始陆续地实现出class了.从 PHP 5.1.0 开始,SPL 库增加了 SplFileObject 与 SplFileInfo 两个标准的文件操作类.SplFileInfo 是从 PHP 5.1.2 开始实现的.从字面意思理解看,可以看出 SplFileObject 要比 SplFileInfo 更

PHP按行读取文件 去掉换行符"\n": 第一种: 复制代码 代码如下: $content=str_replace("\n","",$content);echo $content; 或者: 复制代码 代码如下: $content=str_replace(array("\n","\r"),"",$content); 第二种: 复制代码 代码如下: $content=preg_replace

EOF 是非常重要的概念,几乎每种主流编程语言都提供了相应的内置函数,来验证解析器是否到达了文件EOF.在PHP 中,此函数是feof ().feof ()函数用来确定是否到达资源末尾.它在文件I/O 操作中经常使用.其形式为: int feof(string resource) 实例如下: 复制代码 代码如下: <?php $fh = fopen("/home/www/data/users.txt", "rt"); while (!feof($fh)) ec

解决方案如下,其它框架雷同. 源代码(/system/libraries/upload.php 199 line) $this->file_type = preg_replace("/^(.+?);.*$/", "\\1", $_FILES[$field]['type']); 修改成如下: 复制代码 代码如下: //Edit By Tacker if(function_exists('mime_content_type')){ $this->file_t

小文件几兆以内大小,都可以通过file()函数,将文件按行读入数组,在用array_pop取得最后一行,就可以了. 但是对于很大的文本文件来说,机器内存不够大,或者php本身memory_limit有限制,这个办法就不适用了,即使强行不限制,效率也是非常低的. 没有办法了吗?当然有,不过没有现成的函数了,需要自己动手了. 这里需要用到文件指针,学过C的应该知道指针式个嘛玩意,通俗的讲吧,PHP中通过fopen打开一个文件,这时候还没有读取文件,这时候指向的是文件开头,指针位置也就是0,当你通过f

前言 我研究了file库,终于让我找到了利用Go语言追加内容到文件末尾的办法 主要的2个函数: func (f *File) Seek(offset int64, whence int) (ret int64, err error) func (f *File) WriteAt(b []byte, off int64) (n int, err error) Seek()查到文件末尾的偏移量 WriteAt()则从偏移量开始写入 以下是例子: // fileName:文件名字(带全路径) // c

需求:去掉js字符串末尾的标点符号 原字符串: Hello World! 目标字符串: Hello World 方式一: stringObject.slice(start,end) start : 要抽取的片断的起始下标.如果是负数,则该参数规定的是从字符串的尾部开始算起的位置.也就是说,-1 指字符串的最后一个字符 end:要抽取的片段的结尾的下标.若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串.如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置 var st

本文实例讲述了java实现追加内容到文件末尾的常用方法.分享给大家供大家参考,具体如下: import java.io.BufferedWriter; import java.io.FileOutputStream; import java.io.FileWriter; import java.io.IOException; import java.io.OutputStreamWriter; import java.io.RandomAccessFile; public class Write

be594021dd8fc198df06498483f39aae.png

字符串的操作是C#程序设计中十分重要的一个组成部分,本文就以实例形式展现了C#实现移除字符串末尾指定字符的方法.相信对大家学习C#程序设计有一定的借鉴价值. 关键代码如下: /// /// 移除字符串末尾指定字符 /// /// 需要移除的字符串 /// 指定字符

很多朋友在留言区询问关于python上传文件和字符到服务器的问题,现编针对这个给大家整理了一个解决办法. 上传简单的字符串 def send_str_server(self): payload = {'key1': 'value1', 'key2': 'value2'} r = requests.post("http://httpbin.org/post", data=payload) 介绍:payload 为键值对形式的数据,在服务器的数据的显示为 key1=value1&k

windows系统中文件名不能包含 \ / : * ? " < > |想要创建必须过滤掉这些字符 def setFileTitle(self,title): fileName = re.sub('[\/:*?"<>|]','-',title)#去掉非法字符 self.file = open(fileName + ".txt","w+") 利用正则去掉非法的字符. 以上这篇python创建文件时去掉非法字符的方法就是小编分享

如下所示: # -*- coding:utf-8 -*- import sys reload(sys) sys.setdefaultencoding('utf8') fp = open("resources.txt", "r") sample = fp.readlines() file=open("test.txt", "w") for line in sample: sample_ = line.split('固定字符')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值