我从一个日志文件中提取了一些数据并将其放入一个数组中(我们称之为 $line_content
). 我将数组中的前15行复制到另一个数组中( $line_content15
). 我想从日志文件中删除这15行。我该怎么做?我尝试使用str\u replace,如下代码片段所示:
file_put_contents($filename, str_replace($line_content15 . "\r\n", "",
file_get_contents($filename)));
任何意见都会有帮助。谢谢您!
2条答案
按热度按时间k5hmc34c1#
正如@user3783243所评论的,我需要内爆数组并使用
array_splice($imploded_content,$initial_line_number,$last_line_number)
;.在这种情况下,
$initial_line_number=0
以及$last_line_number=15
.更新:
我还需要更改php访问和修改文件的权限。
icomxhvb2#
考虑到日志文件通常会变得非常大,那么在内存中尝试这样做并不是一个好的解决方案。此外,考虑到日志文件通常是审计跟踪的一部分,因此不应修改它们。但假设有正当理由。。。。。
您可能需要在上面的代码中添加额外的错误处理。这可以通过一个打开的文件来实现,但是很快就会变得混乱。