使用PHP查找并替换所有文件中的文本

时间:2016-11-10 06:42:40

标签: php file replace directory find

大家好,

我的项目中有PHP文件列表。如果我想将index.php文本替换为home.php并保存。它将在目录中的所有PHP文件中更改如何编写此代码。

我可以在单个文件中查找和替换,但我不知道在整个目录中搜索的方式并替换Kindly帮助我知道方式。我是这个部分的新手。谢谢。

3 个答案:

答案 0 :(得分:1)

您可以使用glob获取目录中的所有文件,glob(__DIR__.'/*.php')将为您提供当前目录中的所有php文件。但是,如果您需要在生产服务器中执行此操作,只有在您可以将其作为命令行函数运行时才使用它,因为Web服务器不应具有对文件的写入权限

答案 1 :(得分:0)

scandir()功能可能是您正在寻找的功能。

  

从目录中返回文件和目录的数组。 (php.net)

答案 2 :(得分:0)

如果您在Linux上运行PHP。 替换文件内容的最快方法是使用sed命令。

找到 PATH -type f -exec sed -i -e's / index.php / home.php / g'{} \;

PHP代码:

exec("find . -type f -exec sed -i -e 's/index.php/home.php/g' {} \;");