PHP 如何在txt里查找包含某个字符串的那一行?

<?php
$handler=fopen("1.txt","r");
while(!feof($handler))
{
$m = fgets($handler,4096); //fgets逐行读取,4096最大长度,默认为1024
if(substr_count($m,"百度")>0) //查找字符串
{
print_r($m); //打印结果
}
}
fclose($handler); //关闭文件
?>




-----第一种方法-----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; } ?>

  

-----第一种方法-----fread()--------

?
1
2
3
4
5
6
7
8
<?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 );
}
?>

--------第二种方法------------

?
1
2
3
4
5
6
7
8
<?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 ;
}
?>

-----第三种方法------------

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<?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 ;
}
?>

-------第四种方法--------------

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<?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 />";
}*/
}
?>

----第五种方法--------------------

?
1
2
3
4
5
6
7
8
9
10
11
12
<?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 ;
}
?>

转载于:https://www.cnblogs.com/Czc963239044/p/7553536.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值