gpt4 book ai didi

php - 我可以使用 file_get_contents() 来比较两个文件吗?

转载 作者:IT王子 更新时间:2023-10-28 23:55:41 25 4
gpt4 key购买 nike

我想同步两个目录。我用

file_get_contents($source) === file_get_contents($dest)

比较两个文件。这样做有什么问题吗?

最佳答案

我宁愿做这样的事情:

function files_are_equal($a, $b)
{
// Check if filesize is different
if(filesize($a) !== filesize($b))
return false;

// Check if content is different
$ah = fopen($a, 'rb');
$bh = fopen($b, 'rb');

$result = true;
while(!feof($ah))
{
if(fread($ah, 8192) != fread($bh, 8192))
{
$result = false;
break;
}
}

fclose($ah);
fclose($bh);

return $result;
}

这会检查文件大小是否相同,如果是,则逐步遍历文件。

  • 在某些情况下,检查修改时间检查可能是一种快速的方法,但它并不能真正告诉您文件在不同时间被修改过的任何信息。它们可能仍然具有相同的内容。
  • 使用 sha1 或 md5 可能是个好主意,但这需要遍历整个文件来创建该哈希。如果这个哈希值可以被存储并在以后使用,那可能就另当别论了,但是是的......

关于php - 我可以使用 file_get_contents() 来比较两个文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3060125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com