PHP - 是否可以对数字数组进行哈希处理?

标签 php mysql arrays numbers sha256

我目前正在为客户设置数字哈希系统。如果我使用 hash('sha256', $number) 对数字进行一一散列,我就可以将它们插入数据库并稍后正确查找它们,没有任何问题.

如果我通过相同的哈希发送一组数字,例如:(1041, 1042, 1043, 1044, 1045) (' sha256', $array) 输出与我一一完成时得到的输出不匹配。发生这种情况有什么特殊原因吗?对数组进行散列是一个坏主意吗?

代码示例

如果我按如下方式单独传递数字 1031,我将得到:3e34b5dc434bcf3186f089d362691cfac1b17231601f2f402dc79015be878d83

$number = 1031;
$hash = hash('sha256', $number);

如果数字 1031 通过以下哈希传递,我得到的结果是:d83e4573f6d32ca3f17b77046809c1effe3b462b4cd7338d2c80568e63c76599

while($row = mysqli_fetch_assoc($query)){
     $numbers = $row['pnumbers'];
     $hash = hash('sha256', $numbers);
 }

所以我想我的问题可以归结为:是否可以一次哈希多个数字并检索相同的输出,就像我将它们一一哈希一样?或者我错过了什么或做错了什么?

最佳答案

不,没有 for(each) 循环是不可能的。您怀疑输出会是什么,一个包含哈希值的数组? Here您可以找到哈希函数的文档

关于PHP - 是否可以对数字数组进行哈希处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16964888/

相关文章:

php - CodeIgniter 选择查询日期差异

php - 按标题搜索顺序youtube api

mysql - 查询时间突然增加

javascript - 如何在 forEach 循环内赋值?

arrays - 解析显式数组

php - 按天按周分组获取最近 4 周的记录

javascript - 将背景图像更改为由 ajax 调用脚本动态创建的其他图像

mysql - 如何在 MySQL 中选择重复行的第一个(但重复数据位于不同列中)

php - 更新查询中使用的嵌套 foreach 循环中的数据

javascript - javascript 数组中未定义的第一个元素