读取文件

<?php
	//读取文件
	// header("Content-Type:text/html;charset=utf-8"); 
	// -----第一种方法-----fread()读--------

	$file_path = "test.txt";
	if(file_exists($file_path)){
	$fp = fopen($file_path,"r");
	$str = fread($fp,filesize($file_path));//指定读取大小,这里把整个文件内容读取出来
	echo $str = str_replace("\r\n","<br />",$str);
	}
	fclose($fp);
	 

	// --------第二种方法-----file_get_contents()转字符串-------性能好很多

	$file_path = "test.txt";
	if(file_exists($file_path)){
	$str = file_get_contents($file_path);//将整个文件内容读入到一个字符串中
	$str = str_replace("\r\n","<br />",$str);
	echo $str;
	}

	 

	// -----第三种方法-------feof()检测指针是否到末尾-----

	$file_path = "test.txt";
	if(file_exists($file_path)){
	$fp = fopen($file_path,"r");
	$str = "";
	$buffer = 1024;//每次读取 1024 字节
	while(!feof($fp)){//循环读取,直至读取完整个文件,检测指针是否到末尾
	$str .= fread($fp,$buffer);
	} 
	$str = str_replace("\r\n","<br />",$str);
	echo $str;
	}
	fclose($fp);
	 

	// -------第四种方法-----file()逐行转数组---------

	$file_path = "test.txt";
	if(file_exists($file_path)){
	$file_arr = file($file_path);
	foreach($file_arr as $value){//逐行读取文件内容
	echo $value."<br />";
	}
	}

	 

	// ----第五种方法---------fgets()逐行读取-----------

	$file_path = "test.txt";
	if(file_exists($file_path)){
	$fp = fopen($file_path,"r");
	$str ="";
	while(!feof($fp)){
	$str .= fgets($fp);//逐行读取。如果fgets不写length参数,默认是读取1k。
	}
	$str = str_replace("\r\n","<br />",$str);
	echo $str;
	}
	fclose($fp);

	// ----第六种方法---------readfile()写入到输出缓冲[性能最高]-----------

	$file_path = "test.txt";
	$size = readfile($file_path);
	echo $size;//字节数

	// ----第七种方法---------fpassthru()读取到 EOF 并把结果写到输出缓冲区-----------
	// $file = fopen("http://www.baidu.com","r");
	// fpassthru($file);

	$fp = fopen('test.txt','r');
	fseek($fp, 0);//将指针定位到0字节处
	$size = fpassthru($fp);
	echo $size;//字节数
	fclose($fp);
?>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值