我有一个带有hexvalues的字符串,我和sha1()
一起使用echo sha1("\x23\x9A\xB9\xCB\x28\x2D\xAF\x66\x23\x1D\xC5\xA4\xDF\x6B\xFB\xAE\x00\x00\x00\x01");
ab94fcedf2664edfb9b291f85d7f77f27f2f4a9d
现在我有另一个字符串,其值相同但不是十六进制。
$string2=strtoupper("239ab9cb282daf66231dc5a4df6bfbae00000001");
我想转换此字符串,以便按上述方式读取,并且sha1值与上面相同。
echo sha1(do_something($string2));
ab94fcedf2664edfb9b291f85d7f77f27f2f4a9d
有人知道如何将字符串转换为实际的十六进制值吗?
我尝试使用 pack , sprinft , hexdec ,但没有任何效果(无法找到类型转换十六进制)
答案 0 :(得分:2)
$s = "239ab9cb282daf66231dc5a4df6bfbae00000001";
echo sha1(pack('H*', $s));
输出:
ab94fcedf2664edfb9b291f85d7f77f27f2f4a9d