PHP md5_file 不同机器不一样

PHP md5_file not the same on different machine

我有两个简单的 PHP 脚本:testHash.php 和 me.php。 testHash.php 只是对 me.php 执行 md5_file 函数并打印出结果

testHash.php 包含:

<?php 
 $test = md5_file(__DIR__."/me.php"); 
 echo $test;
 echo phpinfo();
?>

me.php包含:

<?php
echo "Hello World";
?>

我已经使用 FTP 工具 (FileZilla) 将两个脚本上传到两个不同的 Web 服务器,当然没有触及文件。一个是本地虚拟机,另一个是 public Webserver.The $test 变量的输出与另一个不同。两个网络服务器都在 LAMP 框架

上运行
  1. 本地 VM Web 服务器 = 7633bbfa20ed2d29a55338913048eff0
  2. Public 网络服务器 = 3a65329165abe28a485bed663da5e298

为什么它们彼此不同?是否存在影响哈希计算的外部因素(框架、PHP 版本、PHP 配置文件)。谢谢。

如果文件不同,则 md5 不同。

如果您以 ascii 模式传输文件,其中的某些内容可能会发生变化,例如行尾从 CRLF 变为 LF。