php如何读取文本指定的内容?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php如何读取文本指定的内容?相关的知识,希望对你有一定的参考价值。
比如说我的文本叫a.txt
文本里的内容是这样的
12345---45678
12346---45679
12347---45671
要怎么读取12346---后面的值?
-----第一种方法-----fread()--------
<?php
$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);
?>
--------第二种方法------------
<?php
$file_path = "test.txt";
if(file_exists($file_path))
$str = file_get_contents($file_path);//将整个文件内容读入到一个字符串中
$str = str_replace("\r\n","<br />",$str);
echo $str;
?>
-----第三种方法------------
<?php
$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;
?>
-------第四种方法--------------
<?php
$file_path = "test.txt";
if(file_exists($file_path))
$file_arr = file($file_path);
for($i=0;$i<count($file_arr);$i++)//逐行读取文件内容
echo $file_arr[$i]."<br />";
/*
foreach($file_arr as $value)
echo $value."<br />";
*/
?>
----第五种方法--------------------
<?php
$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;
?> 参考技术A 使用循环,下面的语句把需要的内容提取到变量$x中:
$x='';
foreach (file('a.txt') as $line)
if (preg_match('/^12346---(.*?)$/',$line,$reg))
$x=$reg[1];
break;
追问
取前面的值用这个方法可以吗?
追答怎么取都可以,主要理解下面的正则表达式,自行修改即可:
if (preg_match('/^12346---(.*?)$/',$line,$reg))
大佬,您的方法是对的但是读取大文件不行,有解决的办法吗?
追答是的,你说的非常正确,如果文件巨大,就不能使用下面这样的结构,因为file会把所有文件内容一次性读入内存中:
foreach (file('a.txt') as $line
...
我只是不明白,这么高深的道理都懂,下面的解决套路怎么不知道呢,我唯一的理解就是在考我,:
$fp=fopen('a.txt','r');
while (($line = fgets($fp)) !== false)
...
fclose($fp);
大佬,你是个好人,因为我是个PHP小白,好多东西半懂不懂,很感谢你为我解答,你看我这样写对吗?
fortran如何读入文本文件中的某行的指定部分
参考技术A 文本文件只能单向操作(读或者写),不能同时读写。你可以把每个文件读入串数组中,再根据你的需要写入新的文本文件中。以上是关于php如何读取文本指定的内容?的主要内容,如果未能解决你的问题,请参考以下文章