项目遇到一个算法转换,需要将 C#的转换成 PHP 跪求大神帮忙看下 string Sign(string srcStr) { StringBuilder sb = new StringBuilder(32); MD5 md5 = new MD5CryptoServiceProvider(); byte[] t = md5.ComputeHash(Encoding.UTF8.GetBytes(srcStr)); for (int i = 0;i<t.Length;i++) { sb.Append(t[i].ToString("x").PadLeft(2,'0')); }
return sb.ToString();
}
1
gamecreating 2017-05-04 16:04:33 +08:00
这不是打印 Hash 吗?
|
2
jsq2627 2017-05-04 16:10:18 +08:00 via iPhone
这个 Sign 方法只是计算 md5 而已
等于 php 的 md5()函数 |
3
Famio 2017-05-04 16:10:18 +08:00
1:把 string 转换成字符编码
2:计算字符编码的哈希值 3:哈希值变为一个数组 4:按照数组长度遍历数组,并且在每次循环时把数组元素变为 16 进制,不足两位的用 0 补足两位。每次循环后的 string+=1 5:返回最终的 string |
4
Famio 2017-05-04 16:11:11 +08:00
#3 漏了一步 md5
|
5
Famio 2017-05-04 16:17:06 +08:00
#3,不对,我又犯错了,sb 是 string+=string。
|
6
duguxiaohuai OP @jsq2627 大神,我也知道是 md5 就是具体咋写啊
|
7
duguxiaohuai OP @Famio 大神 求具体咋写啊
|
8
vus520 2017-05-04 18:05:21 +08:00
$str = md5($string)
|
9
duguxiaohuai OP @vus520 这一句话就完了?
|
10
Lonely 2017-05-04 18:48:01 +08:00 via iPhone
@duguxiaohuai 网上搜不到吗?
|
11
xjr1022 2017-05-04 21:36:43 +08:00
php 不是就自带 md5()函数吗
|
12
Keyes 2017-05-05 00:14:02 +08:00 via iPad 1
作业还是自己做比较好
|
13
Famio 2017-05-05 10:13:08 +08:00
@duguxiaohuai 我已经告诉你那段代码的意思了。。你可以自己用 php 写写看,我不是很懂 php 的,抱歉无法帮到你。
|
14
duguxiaohuai OP @Famio 你说了不对那句话是啥意思。。。
|
15
wei745359223 2017-05-05 16:45:47 +08:00
md5($str);
|
16
snipes 2017-05-05 19:38:06 +08:00
这么简单的 c#语句,自己花点时间看下,不难的。
|