0

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

这么多文件会造成很多服务器压力吗?假设有 10 个人同时使用该程序查找和替换所有 1,000 个文件,情况会怎样?

4

1 回答 1

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,并且是一个文件。

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

于 2012-11-17T23:26:30.037 回答