gpt4 book ai didi

php - Python包到PHP包

转载 作者:行者123 更新时间:2023-11-28 21:54:51 24 4
gpt4 key购买 nike

我正在尝试将 Python 脚本转换为 PHP。但是我无法正确设置格式。

python :

print(hashlib.sha1(struct.pack('L', 1)).hexdigest()) 

输出:

3da89ee273be13437e7ecf760f3fbd4dc0e8d1fe

PHP:

echo sha1(pack('L', 1));

输出:

3c585604e87f855973731fea83e21fab9392d2fc

有人可以给我指明正确的方向以获得两种语言的相同输出吗?

最佳答案

差异的出现是因为整数大小不同。虽然 pack() 的 php 版本中的 L 使用硬编码的 32 位整数,但 Python 默认使用机器整数大小。如果您在 64 位系统上工作,您会注意到差异。 (如题所示)

你需要在python中使用=来标准化对齐大小:

print(hashlib.sha1(struct.pack('=L', 1)).hexdigest())

输出:

3c585604e87f855973731fea83e21fab9392d2fc

请引用文档:

关于php - Python包到PHP包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23532363/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com