zoukankan      html  css  js  c++  java
  • 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(" ","<br />",$str); } ?> --------第二种方法------------ <?php $file_path = "test.txt"; if(file_exists($file_path)){ $str = file_get_contents($file_path);//将整个文件内容读入到一个字符串中 $str = str_replace(" ","<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(" ","<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(" ","<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(" ","<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(" ","<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(" ","<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(" ","<br />",$str);
    echo $str;
    }
    ?>
  • 相关阅读:
    IDEA添加注释模板
    Docker安装Mysql
    Linux使用
    Linux使用
    Spring Cloud入门 (5)
    在IDEA中将SpringBoot项目打包成jar包
    Linux使用
    Linux使用
    Linux使用- 虚拟机安装 Linux
    Spring Cloud入门 (4)
  • 原文地址:https://www.cnblogs.com/Czc963239044/p/7553536.html
Copyright © 2011-2022 走看看