Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php编辑多个.php文件_Php_File_Edit - Fatal编程技术网

使用php编辑多个.php文件

使用php编辑多个.php文件,php,file,edit,Php,File,Edit,我想用php编辑不同文件夹中的100个php文件。 我在谷歌上搜索过,但没有得到任何帮助。 我想用其他文本替换每个文件中的一些文本。告诉我使用php的合适方法 例如,我有两个文本t1,t2,我想在每个文件中用v1,v2替换它。怎么做 $files = array( 'directory/file1.php', 'directory/file2.php' ) $t1 = 'your text 1'; $t2 = 'your text 2'; $t1 = 'your versio

我想用php编辑不同文件夹中的100个php文件。 我在谷歌上搜索过,但没有得到任何帮助。 我想用其他文本替换每个文件中的一些文本。告诉我使用php的合适方法

例如,我有两个文本t1,t2,我想在每个文件中用v1,v2替换它。怎么做

$files = array(
    'directory/file1.php',
    'directory/file2.php'
)

$t1 = 'your text 1';
$t2 = 'your text 2';

$t1 = 'your version 1';
$t2 = 'your version 2';

foreach($files as $f) {
   $old_content = file_get_contents($f);
   $new_content = str_replace($t1, $v1, $old_content);
   $new_content = str_replace($t2, $v2, $new_content);
   file_put_contents($f, $new_content);
}
  • PHP并不是这项工作的最佳工具。。。但它可以做到。可能更适合,但肯定有一点学习曲线
  • 您将要使用以下函数:
    • 您将使用
      for
      循环遍历每个文件,并对每个文件执行
      str\u replace()
      我建议不要只是盲目地这样做,因为如果你犯了错误,可能会造成很大的破坏。

  • 如果你已经尝试过这个,并且有一个特定的问题,回来和你已经尝试过的一起发布

    我可能会在命令行上使用
    sed
    ,但如果不小心,可能会发生意外更改。或者,让您的工具来完成繁重的工作:看看您最喜欢的IDE/文件编辑器-它可能有多文件搜索和替换功能?例如,升华文本具有
    在文件中查找..
    功能,允许多文件搜索和替换,可以选择使用正则表达式模式匹配。正如下面所建议的,我会采取一种渐进的方法——不要盲目地对你的文件运行破坏性的过程!首先我尝试了这个,但它不能完成我的工作。现在看看你的代码,我得到了我想要的。谢谢,我会修改的。我的代码:以上代码的问题是,我只能执行一次更换,但我必须进行多次更换。现在我可以通过检查您的代码来完成。谢谢你的帮助。我认为str_replace()是最好的方法。