替换网站上的文字?

时间:2012-11-17 23:21:55

标签: php string replace

我帮助管理一个包含大量html文件的非营利性网站,可能大约有1000个。破碎的链接很麻烦,我想知道是否有可能(可能使用PHP)创建一个程序来替换所有这些文件中的文本字符串(即URL)。

这会对这么多文件造成很大的服务器压力吗? 如果10个人同时使用该程序查找并替换所有1,000个文件呢?

1 个答案:

答案 0 :(得分:1)

当然有可能!

这样做的关键是能够在PHP中读取文件并处理其内容。阅读很容易,写作也是如此。编辑是需要你注意的一点。

$yourFilename = "file.html";
$yourFileData = file_get_contents($yourFilename);
if ($yourFileData !== false) {
     // File has been read successfully
     // $yourFileData has the contents of it. This is where the magic needs to happen!
}
// Write everything back
$file = fopen($yourFilename,"w");
fwrite($file,$yourFileData);
fclose($file);

这段代码有效地读取文件并写入文件。中间位是您进行搜索和替换的位置。我强烈建议使用正则表达式。我相信preg_replace会非常方便。阅读它,并随时编辑您的问题更多详细信息 - 我非常乐意为您编写正则表达式。

遍历目录也非常简单。你想使用opendir()打开一个目录,并使用readdir()循环,确保返回值不是。,..或false,并且是一个文件。

对于你的其他问题:多个用户,如果我是你,我会避免。这会造成竞争条件。