php - 用php替换大文件中的字符串

标签 php string replace readfile

我正在尝试用 PHP 对整个文件进行字符串替换。我的文件超过 100MB,所以我必须逐行查看,不能使用 file_get_contents()。有好的解决办法吗?

最佳答案

如果您不需要使用 PHP,我强烈建议您从命令行执行类似的操作。它是迄今为止完成这项工作的最佳工具,而且更易于使用。

无论如何,sed (Stream Editor)命令是您要查找的内容:

sed s/search/replace oldfilename > newfilename

如果您需要不区分大小写:

sed s/search/replace/i oldfilename > newfilename

如果您需要它在 PHP 中动态执行,您可以使用 passthru():

$output = passthru("sed s/$search/$replace $oldfilename > $newfilename");

关于php - 用php替换大文件中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2159059/

相关文章:

JOIN 查询的 Php pdo 结果

PHP XML 删除父级

java - java.lang.String 中存在的 contains() 方法在某些情况下无法正常运行,有人可以解释一下这种行为吗

C# 将部分字符串视为 var

xml - 删除文件中的 XML 字符串

php - 使用非 JavaScript 替代方案开发 Javascript 网页

c - 如何在函数中检查 C 中的类型

java - 如何通过 "java.lang.String"解决 java.lang.OutOfMemoryError 错误,由 "<system class loader>"Eclipse 内存分析器加载

将多个单词替换为一个单词单个单词

php - 没有主键的 Laravel 模型保存数据