阿斯顿阿三在 2017-10-19 19:16 采纳率: 21.4%
浏览 2017
已结题

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

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

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

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

  • 写回答

4条回答 默认 最新

  • Jack2754 2020-03-05 06:16
    关注

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

    评论
  • 阿斯顿阿三在 2017-10-19 19:39
    关注

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

    评论
  • 子幽 2017-10-20 00: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 00: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);
    
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部