全球主机交流论坛
标题:
请教下PHP大屌
[打印本页]
作者:
simonw
时间:
2023-8-25 12:47
标题:
请教下PHP大屌
一个文本文件,要求始终保留指定行数的内容,比如1万行,超过的时候就删除最前的内容。
有没有高效点的办法?
作者:
superEric
时间:
2023-8-25 13:02
一万行小case,file应付的来
作者:
yanzhiling2002
时间:
2023-8-25 13:04
<?php
// 指定行数
$lineLimit = 10000;
// 原始文件路径
$filePath = 'path/to/your/file.txt';
// 打开原始文件和临时文件
$originalFile = fopen($filePath, 'r');
$tempFile = fopen('path/to/your/temp_file.txt', 'w');
// 计数器
$lineCount = 0;
// 逐行读取原始文件
while (($line = fgets($originalFile)) !== false) {
$lineCount++;
// 写入临时文件
fwrite($tempFile, $line);
// 如果超过指定行数,停止写入
if ($lineCount >= $lineLimit) {
break;
}
}
// 关闭文件流
fclose($originalFile);
fclose($tempFile);
// 备份原始文件
copy($filePath, 'path/to/your/backup_file.txt');
// 替换原始文件
rename('path/to/your/temp_file.txt', $filePath);
?>
复制代码
作者:
rkidc
时间:
2023-8-25 13:05
这点毫秒级的处理就不用考虑性能了
作者:
920
时间:
2023-8-25 13:13
写入的时候判断一下行数,超过的时候删除老的数据
作者:
Front
时间:
2023-8-25 13:31
这种用 gpt 都能写
作者:
龙腾宇内
时间:
2023-8-25 13:38
用队列实现
作者:
mengdodo
时间:
2023-8-25 13:40
不考虑并发的情况下可以用file,最好还是直接redis,没几行代码
欢迎光临 全球主机交流论坛 (https://fd.vvwvv.eu.org/)
Powered by Discuz! X3.4