阿斯顿阿三在
2017-10-20 03:16
采纳率: 21.4%
浏览 2.0k

PHP替换txt文件第2行的数据

比如:
1晴天
2阴天
3下雨天

我要把第2行 的"阴天"修改成"下雪天"

注:
最好通过行号去修改而不是通过 字符串搜索去修改

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • 阿斯顿阿三在 2017-10-20 03:39

    行号多少已经有了.不用再去获取行号

    点赞 评论
  • 子幽 2017-10-20 08:42
        $file_path = 'xxx.txt';
    
    $content = file_get_contents($file_path);
    
    //按换行符把全部内容分隔成数组
    
    $con_array = explode("n", $content);
    
    //替换掉指定行
    
    
    
    $con_array[12]="123";
    
    //组合回字符串
    
    $con = implode("n", $con_array);
    
    
    
    //写回文档
    
    file_put_contents($file_path, $con);
    
    点赞 评论
  • 子幽 2017-10-20 08:49
     //修改第4行内容
    $f = fopen('test1.txt', 'r+');
        $i = 1; 
        while (!feof($f)) {
            if ($i == 4) {
                fseek($f, 0, SEEK_CUR);
                fwrite($f, 'aad');//这里的修改是替换形式,如果修改后这一行的长度比原来短,那么可以用空格填充到原来长度,这样实现修改,而且不影响后面的内容,但是修改后的比原来长就麻烦了,
                break; 
            }
            fgets($f);
            $i++;
        }
        fclose($f);
    
    点赞 评论
  • Jack2754 2020-03-05 14:16

    给你最简单的方法吧。
    <?
    $content = file('gt.txt');//按换行符把全部内容分隔成数组
    $content[2]="下雪天\n";//替换指定行的内容
    file_put_contents('gt.txt', $content);//重新生成文档
    ?>

    点赞 评论

相关推荐 更多相似问题