Php中md5函数与Linux中md5sum结果不同:修订间差异

来自牛奶河Wiki
跳到导航 跳到搜索
无编辑摘要
无编辑摘要
第2行: 第2行:
Php中md5函数与Linux中md5sum结果不同,MySQL也同样,其MD5函数算出来的值与Linux中md5sum结果也不同。
Php中md5函数与Linux中md5sum结果不同,MySQL也同样,其MD5函数算出来的值与Linux中md5sum结果也不同。


Linux中用 echo 字符串| md5sum 或 md5sum 文件名,两种方式来计算的md5值,串中都有隐含的字符串终止符,所以并非只计算了字符串的md5值。
Linux中用 echo 字符串| md5sum 或 md5sum 文件名,两种方式来计算的md5值,字符串最后含有隐含的字符串终止符,所以并非只计算了字符串的md5值。


=== 方法一 ===
===方法一===
如果是字符串可以通过增加-n参数解决:  
如果是字符串可以通过增加-n参数解决:  


echo -n “123”| md5sum
echo -n '123'| md5sum


==== PHP ====
====PHP ====
<?php
<?php


   echo md5(‘123’);
   echo md5('123');


?>
?>


==== Linux ====
====Linux====
echo -n '123'|md5sum
echo -n '123'|md5sum


==== MySQL ====
====MySQL====


SELECT MD5('hello');<blockquote>202cb962ac59075b964b07152d234b70</blockquote>
SELECT MD5('hello');<blockquote>202cb962ac59075b964b07152d234b70</blockquote>
第26行: 第26行:
也可以在PHP或MySQL中增加回车符:
也可以在PHP或MySQL中增加回车符:


=== 方法二 ===
===方法二===


==== PHP ====
====PHP====
<?php
<?php


第37行: 第37行:
注意上面md5中的字符串必须为双引号。
注意上面md5中的字符串必须为双引号。


==== Linux ====
====Linux====
echo '123'|md5sum<blockquote>ba1f2511fc30423bdbb183fe33f3dd0f</blockquote>
echo '123'|md5sum<blockquote>ba1f2511fc30423bdbb183fe33f3dd0f</blockquote>
[[分类:Develop]]
[[分类:Develop]]
[[分类:Linux]]
[[分类:Linux]]
[[分类:Php]]
[[分类:Php]]

2023年1月3日 (二) 21:19的版本

Php中md5函数与Linux中md5sum结果不同,MySQL也同样,其MD5函数算出来的值与Linux中md5sum结果也不同。

Linux中用 echo 字符串| md5sum 或 md5sum 文件名,两种方式来计算的md5值,字符串最后含有隐含的字符串终止符,所以并非只计算了字符串的md5值。

方法一

如果是字符串可以通过增加-n参数解决:

echo -n '123'| md5sum

PHP

<?php

   echo md5('123');

?>

Linux

echo -n '123'|md5sum

MySQL

SELECT MD5('hello');

202cb962ac59075b964b07152d234b70


也可以在PHP或MySQL中增加回车符:

方法二

PHP

<?php

   echo md5(“123\n”);

?>

注意上面md5中的字符串必须为双引号。

Linux

echo '123'|md5sum

ba1f2511fc30423bdbb183fe33f3dd0f