把python转换为php出了问题。我有在python以下代码:用sha转换python代码到php
user = "DdrkmK5uFKmaaeNqfqReMADSUJ4sVSLrV2A8Bvs8"
passing = "K9hvwANSBW5tLYzuWptWMByTtzZZKHzm"
sha = hashlib.sha256()
sha.update(user)
sha.update(passing)
sha_A = [ord(x) for x in sha.digest()]
sha_A
是以下数组:
[231,13,239,136,20,198,76,121,67,163,251, 153,114,13,65,203,41,37,64,168,43,69,81,103,235,161,15,58,82,57,217,178]
我已将其转换为php:
$user = "DdrkmK5uFKmaaeNqfqReMADSUJ4sVSLrV2A8Bvs8";
$passing = "K9hvwANSBW5tLYzuWptWMByTtzZZKHzm"
$sha = hash_init("sha256");
$sha = hash_update($sha, $user);
$sha = hash_update($sha, $passing);
$sha_A = [];
$i = 0;
$digest = openssl_digest($sha, "sha256");
$digest = str_split($digest);
foreach ($digest as $x) {
$sha_A[$i] = ord($x);
$i = $i + 1;
}
但是返回的阵列$sha
看起来像这样:
[101,51,98,48,99,52,52,55,56,102,99,49,99,49,52,57 ,97,102,98,102,52,95,56,57,57,54,102,98,57,50,52]
也许你们中的一些人会发现我的错误?
谢谢。这是帮助我:)但以下部分是什么:sha_A = [在sha.digest()中x的ord(x)]我转换它是否正确? – razzru80
我也更正了这部分;) –