首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我想用php写txt上的某一行。

你可以使用PHP的文件操作函数来实现读取和写入txt文件的功能。具体步骤如下:

  1. 打开文件:使用fopen()函数打开txt文件,指定打开模式为读写模式("r+")或写入模式("w")。
  2. 定位到指定行:使用fgets()函数逐行读取文件内容,通过循环遍历找到目标行。
  3. 修改行内容:使用fwrite()函数将修改后的内容写入到临时文件中。
  4. 替换原文件:使用rename()函数将临时文件替换原文件,完成修改。

以下是一个示例代码:

代码语言:txt
复制
<?php
function modifyTxtLine($filename, $lineNumber, $newContent) {
    $tempFile = 'temp.txt';
    $handle = fopen($filename, 'r+');
    $tempHandle = fopen($tempFile, 'w');

    $count = 0;
    while (($buffer = fgets($handle)) !== false) {
        $count++;
        if ($count == $lineNumber) {
            fwrite($tempHandle, $newContent . "\n");
        } else {
            fwrite($tempHandle, $buffer);
        }
    }

    fclose($handle);
    fclose($tempHandle);

    rename($tempFile, $filename);
}

$filename = 'example.txt';
$lineNumber = 3;
$newContent = 'This is the modified line.';

modifyTxtLine($filename, $lineNumber, $newContent);
?>

上述代码中,modifyTxtLine()函数接受三个参数:文件名($filename),要修改的行号($lineNumber),以及新的内容($newContent)。你可以根据实际情况修改这些参数。

请注意,这只是一个简单的示例,仅适用于小型文本文件。对于大型文件或需要频繁修改的文件,建议使用更高效的方法,如使用数据库存储数据或使用其他适合的数据结构。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

在别人代码做修改是这样保证正确性

这么一件事,总有也就几百代码开发量。...详细方案设计在别人代码做修改,做详细设计时,第一步要做是充分评估改动影响;第二步是画流程图梳理改动前后调用链和数据流,列出修改点;第三步是定好测试关键案例,确保结果正确性。...逻辑是没有问题。但是他觉得代码上层不加,语义不连贯。觉得逻辑应该内聚,自己做好事情不应该让上层来做。这种问题,统归为风格问题。每个人写文章思路是不同代码思路也是不同。...也不建议他这样保证。后来,自己想了一下,如果用两个模板,两个append同时一个日志文件,之前也没有这么用过,也有风险,所以还是按照他说改了。...其实本质同事意思就是:“和你一起保证修改正确性”。用心是非常好。 最终提7条每条我们都争论了,那是因为每一条我们两个都真正思考过。这种氛围觉得是非常好

1.1K20

Jeff Dean激荡人生:和Sanjay在同一台电脑代码

纽约客指出,Jeff 和 Sanjay 共用同一台电脑代码。 文章发出之后,Jeff Dean 表示:「认为这篇文章精准地捕捉了我们工作风格。」 ?...多个 1 和 0 列出现在 Sanjay 显示器中,每一表示一个索引词。Sanjay 指出:一个本应该是 0 数字却显示为 1。...「也不知道当初是怎么决定在一起合作。」他说。 「我们加入谷歌之前就是搭档了。」Jeff 说。 「但我记不清为什么要在一台电脑编程,而不是在两台电脑干活。」Sanjay 说。...在他们背后,一块白板满了矩阵代数式子,一篇关于无监督对抗网络论文躺在桌子。Jeff 穿着一件褪色 T 恤和牛仔裤;Sanjay 穿着毛衣和灰色裤子。...「不清楚我们应该采用多大单元 size 阈值,0.5MB?」 「听起来不错,」Jeff 说道。Sanjay 开始代码,Jeff 盯着屏幕。

1.2K10
  • 世界最好语言PHP也可以用OpenCV搞计算机视觉

    就像许多开发人员一样,也经常使用别人工作成果(Medium 文章、GitHub 代码等),因此也很乐意与社区分享成果。...php-opencv 项目的 logo 曾考虑使用 SWIG 一个 php-opencv 模块,并花费了大量时间在上面,但是并没有取得任何成果。...一切都因为不懂 C / C++ 并且没有为 PHP 7 编写过扩展文件而变得复杂。不幸是,网上大多数材料都是基于 PHP 5 而 PHP 扩展,因此不得不一点点收集信息并自己解决问题。...然后,在 GitHub 找到了 php-opencv 库,它是一个用于调用 OpenCV 方法 PHP 7 模块。花了几个晚上来编译、安装和运行示例。...人脸标记/特征点 当我开始熟悉 OpenCV 时,经常看到一些人照片,这些照片点标记着眼睛、鼻子、嘴唇等。想自己重复这个实验,但在 OpenCV Python 版本中并没有实现。

    1.1K30

    简明PHP进阶【5-文件处理】

    2 读取部分文件 1、读取一个字符:fgetc() 在文件中,真对某一个字符进行查找,替换时,就需要对这个字符进行读取,在PHP中使用fgetc()函数进行字符读取。...如下代码: a.txt内容: 首先他们无视于你,而后是嘲笑你,接着是批斗你,再来就是你胜利之日。--甘地 index.php中测试代码: <?...而fgetss()函数是fgets()函数变体,用于读取一数据,同时fgetss函数会过滤掉被读取内容中html和php标记,而fgetss()函数需要指定长度。 <?...如下语法格式: readfile("a.txt"); 2、file() file()函数可以把文件读入到一个数组中,将文件作为一个数组来返回,数组中每个单元都是文件中相应,包括换行符在内...php $chr=fopen("a.txt",'a'); if(!

    1K30

    RCEBypass与骚姿势总结

    本文原作者;小仙人 Bypass篇 前言:关于RCEBypass,我们应该从哪些角度开展呢。要知道怎么绕过,我们就得知道防火墙过滤规则才。...那我们想想,在利用RCE漏洞时候,我们当然想用cat、chmod、whoami、ifconfig、ls等这些操作对不对!像这些敏感命令,防火墙就会进行过滤。...分号绕过:在bash下可以用%0a (声明其中一个做法{cat,1.txt},这里尖括号用法是括起来再用逗号,要注意。)...这是前辈https://imagin.vip/?p=508 真可谓收益匪浅,学习就是先走一遍别人老路,到达一定知识量时候,自己走自己路。...原理是通过LD_PRELOAD绕过disable_functions这里推荐一个各种方式突破Disable_functions达到命令执行Shell。工具可以到"安全武器库"拿。

    1.2K20

    RCEBypass与骚姿势总结

    本文原作者;小仙人 Bypass篇 前言:关于RCEBypass,我们应该从哪些角度开展呢。要知道怎么绕过,我们就得知道防火墙过滤规则才。...那我们想想,在利用RCE漏洞时候,我们当然想用cat、chmod、whoami、ifconfig、ls等这些操作对不对!像这些敏感命令,防火墙就会进行过滤。...分号绕过:在bash下可以用%0a (声明其中一个做法{cat,1.txt},这里尖括号用法是括起来再用逗号,要注意。)...这是前辈https://imagin.vip/?p=508 真可谓收益匪浅,学习就是先走一遍别人老路,到达一定知识量时候,自己走自己路。...原理是通过LD_PRELOAD绕过disable_functions这里推荐一个各种方式突破Disable_functions达到命令执行Shell。工具可以到"安全武器库"拿。

    3.7K00

    PHP】文件写入和读取详解

    :服务器目录结构可能会有较大改变,这时原来写绝对路径就要全部重写了,比如在电脑目标文件路径是C:/wamp64/www/text.txt,如果把www文件夹改名为penghuwan呢?...【注意】r+,a+,w+还有一个区别是a+,w+在文件不存在时则创建文件,r+文件不存在时报错 【吐槽】:关于r+和w+,a+区别,找了网络,包括W3C和各种博客文章以及那本“PHP圣经”各种资料...,发现都是一笔带过去,这也是这篇文章原因 三.文件读取和文件写入操作 先说说几个比较重要函数: • file_exists():判断文件是否存在,返回布尔值 • filesize():判断一个文件大小...fgets()其实还有第二个参数,这个参数规定了每一能读取最大字节数(注意是字节数不是字符数): 【注意】在UTF-8编码下汉字3字节,字母1字节 下面修改上面的一,代码,使获取每一最大字符数为...1即使不手写fclose,在PHP脚本执行结束后,也会自动关闭文件 2但在一个长时间执行脚本中,如果不关闭文件fclose(),在文件加锁情况下会造成操作阻塞,所以,fclose是个好习惯

    4K70

    github & CSRF

    当然顺利getshell 但是遗憾是这个外网机器是某一个第三方VPS 而不属于该企业,也就是这个外网机器是该企业员工即该github用户个人测试服务器。...如图每条命令间都是显式换行分割 当这个请求包发送到redis后会一执行错误命令执行失败正确命令则执行成功 所以说redis兼容是挺强大执行错误后依然会尝试执行后面的语句 不过很可惜这个博客是...解决https问题 多次尝试绕过无果后想到一个自我感觉最佳方案 在nginx.conf添加http站点设置并指向同一个博客目录 /var/www/html/blog 然后header.php 和...php $ip = base64_encode($_GET['ip']); $f = fopen('list2.txt','r'); $contents =fread($f,filesize('list2...也不知道断句有没有对。。。)

    95080

    "独立开发者"如何使用ChatGPT提升效率

    这几个月实践经历让总结了下面几个场景.效率提升场景一:排查问题以前一遇到问题就问搜索引擎,但大多数时候,这真的给我一种大海捞针感觉,你得祈祷你想要答案在某一篇博客某一个小段落出现.举一个简单例子...,比如我想用git来合并代码,但我忘了具体命令,以前的话,我会在搜索引擎搜索,虽然答案也能很快找到,但总是感觉不够"直接",就是说,你问了一个问题,搜索引擎并没有给你一个量身为你定制答案,你只是在众多答案中筛选一个你觉得最可能接近你答案...,查找问题可以直达核心.效率提升场景二:代码这个估计大家都知道,但是在用时候,发现它竟然可以写出连官方文档都没有的代码,比如我最近想一个支付宝"统一收单下单并支付页面接口",这个在支付宝官方文档中只有...java和php示例代码,没有python示例代码,于是求助了ChatGPT帮我一个python版本,然后竟然就给我写出来了,而且代码不用调整.可能是这块代码在官方文档中虽然没有,但是在github...,像一些写文章,文案之类工作,可能不是特别擅长,而这些正好是ChatGPT擅长领域,这里就不举自己例子了,只分享几个网上案例集,给大家参考,有兴趣大家可以试试看.1:OpenAI官方给出示例

    15000

    使用PHP辅助快速制作一套自己手写字体实践

    一、背景 笔者以前在网上看到有民间高手制作字体相关事迹,觉得把自己手写字用键盘敲出来是一件很有意思事情,所以一直有时间想制作一套自己手写体,前几天在网上搜索了一下制作字体方法,发现技术并不是太难...、文章、通讯录收集了起来,如下图则是笔者过往文章列表 [image] 我们将文章内容复制到txt文件当中,然后保存到某一个文件夹当中,如下图所示 [image] 3.2 去除杂项 收集了文章之后,里面有很多杂项...,可能一下不完,不过作为开发者当然是要讲究高效率;所以可以通过PHP来进行优先级计算,把最常用到字体排在前面,因此笔者需要写一段PHP代码。...4.1 字体文件编码 现在笔者将PHP计算字符写入到一个txt文件当中,参考命令如下 php quchong.php > result.txt 保存之后,还需要将它编码设置为UTF-8;操作步骤为...;在登陆之后点击字体,可以看到当前字体模板,选择自定义,参考下图 [image] 点击自定义之后,笔者能看到一个上传txt文件表单,如下图所示 [image] 上传完成之后,笔者回到列表当中,就可以看到刚才创建字体模板

    1.4K30

    使用PHP辅助 快速制作一套自己手写字体实践

    一、背景 笔者以前在网上看到有民间高手制作字体相关事迹,觉得把自己手写字用键盘敲出来是一件很有意思事情,所以一直有时间想制作一套自己手写体,前几天在网上搜索了一下制作字体方法,发现技术并不是太难...我们将文章内容复制到txt文件当中,然后保存到某一个文件夹当中,如下图所示 ? 3.2 去除杂项 收集了文章之后,里面有很多杂项,比如空格和换行,这些内容我们并不需要,如下图所示 ?...当笔者点击Replace all按钮时,变删除了所有非中文字符,此时我们内容应该只有一内容,如下图所示 ?...4.1 字体文件编码 现在笔者将PHP计算字符写入到一个txt文件当中,参考命令如下 php quchong.php > result.txt 保存之后,还需要将它编码设置为UTF-8;操作步骤为...这里一定要打开这些图片确认无误,确认这些字和上传字能对应,如果里面的字明显不是刚才上传,很有可能是你上传文件编码不正确,笔者生成字体模板如下图所示 ?

    99830

    Shell 命令行统计 apache 网站日志访问IP以及IP归属地

    Shell 命令行统计 apache 网站日志访问IP以及IP归属地 一个站点用 apache 服务跑着,积攒了很多日志。想用 shell 看看有哪些人访问过站点,并且他来自哪里。...-ne 0 ]; then curl -sL http://ip.cn/index.php?...ip=$ip >> ip.txt fi done < $log echo -e '\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\bbOK ' 首先呢,当然是把昨天进度拿出来整合进去啦...然后用 grep 在 ip.txt 这个文件中查找一下这个 ip 存在不存在,但是不想把结果打印到终端,所以用输入到 /dev/null 实现禁止标准输出。 然后用 $?...如果不存在,就去 ip.cn 查询一下 ip 归属地,并将结果追加到 ip.txt 文件 最后就完成了。 因为要上网查,所以效率是比较慢。不过结果不重要,重要是实现过程。

    1.4K60

    【迅搜17】SCWS分词(二)自定义字典及分词器

    很明显,它不是一个传统意义正常单词,但就像很多专业词汇一样,我们假设“无三”就是一个专业词汇。目前直接搜索“无三”肯定是没有数据。 > php ....后面三个字段属性其实是可以不用,它会有默认值。 我们直接添加一个“无三”,后面的不用填,然后重新索引添加数据。再次查询,就可以看到“无三”可以被搜索到了。 > php ....这种字典就是针对某一个具体项目的,比如说针对我们 demo 项目,那么就直接找到安装目录 data 目录,然后找到 demo 文件夹,在这个文件夹中创建一个 dict_user.txt 文件。...如果确实有非常大量专业词汇,建议还是转换一下哦。这里就不演示了,SCWS 还是比较智能,普通 txt 文件其实大部分情况下还是能满足需求。 接下来咱们测试一下。 php ....给最后启动服务代码中,加上 -s etc/stopwords.txt 就可以了。

    23810

    搭建随机图片API

    想法 搭建好BLOG和TECH,一直觉得里面的随机图片很好看。依靠baidu大概了解到这个是依靠API实现。于是乎,自己也想整一个(毕竟图片在自己手上用放心捏)。...然后在photos.txt文档内放图片外链地址(一一个),在api.php加入下列代码: <?...如果你图片放在对象存储中,则直接在TXT文件中写入每张图片位置(一一个)即可! 由于我自己图片比较多,所以当我使用搭建外链时候比较头疼——那么多图片文件名得全部录入TXT中!...于是就稍微写了两python简化了一下工作量,代码如下(自己用时候修改一下地址就行啦): import os path = "E:\WEB学习\python\photos" #填写photos文件夹路径...读取photos中文件 for i in datanames: with open(filename, 'a') as f: #'w'表示数据,之前会清空文件中原有数据!'

    8610

    Web漏洞 | 文件包含漏洞

    php里,我们就是使用上面列举那几个函数来达到这个目的,它工作流程:如果你想在 main.php里包含share.php,将这样 include("share.php") ,然后就可以使用share.php.../php/index.php on line 3 第一那个Warning就是找不到我们指定hello.php文件,也就是包含不到我们指定路径文件; 而第二警告是因为前面没有找到指定文件,所以包含时候就出警告了...用户可以动态控制变量 我们可以指定其他URL一个我们一句话木马,然后用菜刀连接获取Webshell。...我们还可以指定其它URL一个包含PHP代码webshell来直接运行,比如,先写一段运行命令PHP代码,如下保存为cmd.txt(后缀不重要,只要内容为PHP格式就可以了)。...把这个文件保存到我们主机服务器(可以是不支持PHP主机),只要能通过HTTP访问到就可以了,例如地址如下:http://www.xxx.cn/cmd.txt,然后我们就可以在那个漏洞主机上构造如下

    2.8K10

    为将傅恒与魏璎珞爱情链,作为技术小白读了EVM上百代码,终于搞定了

    作者 | Vasa TowardsBlockChain 联合创始人 编译 | kou、Guoxi 傅恒爱上了魏璎珞,却因为他们爱情学习了以太坊虚拟机!...因为小编想要用在以太坊上将他们爱情链,学习以太坊,就要了解以太坊虚拟机!...由于智能合约初始化过程会返回需要存储智能合约正文代码,因此从构造函数逻辑讲,代码是不可访问。...以太坊中不同数据类型 堆栈 以太坊虚拟机是一个基于堆栈机器,这意味着它不在寄存器运行,而是在虚拟堆栈运行。堆栈深度上限为1024,堆栈项大小为256位。...接下来,为了将傅恒与魏璎珞爱情链,小编会继续学习以太坊!

    88830

    CanHackMe | CTF平台搭建记录

    在Github发现了一个开源CTF平台,界面很好看,而且是php,所以决定搭建一下折腾折腾。...把拿到key替换一下 第一条密钥替换common.php文件里recaptcha_sitekey内容 第二条密钥编辑成.recaptcha_secretkey.txt文件,放到@import/confs...import/views/users/sign-in.php @import/views/users/sign-up.php 有动手能力强老哥如果能把recaptcha这个验证功能去除的话一定要记得联系...总结 搭建过程中遇到几个奇奇怪怪问题,和作者反馈后,作者小改动了几次,所以安装时候还是clone保存以前代码吧。...最后附一张安装成功图。 ? ---- 堂堂天钧是不会给学长们出二次加密,隐,SQL注入,音频!!!

    1.7K10

    第一个面向需求Haskell程序

    背景 上周五(20年8月28日)时候,公司测试同学需要测试一个提测需求,其中有个测试用例是需要检查下下后台导出兑换口令列表文件中是否有重复口令。...Why is Haskell 因为这个程序写出来是要交给测试同学使用,如果用java或者php这种解释型语言来写,还需要测试同学先去安装个java/php解释器才,显然是有点扯,所以用编译型语言写完后直接...当然可以将java/php程序打包成一个可执行文件,但是又要花费一些不必要时间了。 编译型语言中常用有golang和Haskell。...不可否认Go面对这个需求写起来可能更快,但是其实还是想用Haskell练练手。 那? 开始吧!.../repeat keywords.txt 能够满足需求! 后续优化请看 《第一个面向需求Haskell程序》续

    9010
    领券