php - 为什么我的 binary(64) 60 字符密码哈希在 phpmyadmin 中显示为 60 个字符,但在导出时最后有四个 '\0'?

标签 php mysql sql phpmyadmin password-hash

我知道\0 是结束字符串。为什么有四个?为什么在我的 php 代码中,我必须专门取前 60 个字符的子字符串才能使 password_verify 起作用? (例如 $passhash = substr($result, 0, 60);)

感谢您提供的所有帮助。

最佳答案

PHPMyAdmin 根本不会向您显示它。

您有一个 64 字节的字段。它总是 64 字节。如果您使用了 60 个字节,则最后四个字节将为空字节。

关于php - 为什么我的 binary(64) 60 字符密码哈希在 phpmyadmin 中显示为 60 个字符,但在导出时最后有四个 '\0'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50081366/

相关文章:

php - 无法创建缓存目录.. 或目录不可写。在 Laravel 中进行无缓存

php - 如何在 Visual Studio Code 中初始化 PHP 构造函数字段

mysql - 从数据库中删除多个值

Mysql 数据库名称限制

MYSQL 查询 : get the latest date with grouped by data

php - 如何使用 jQuery 在 PHP 中制作级联下拉列表

php - 在 h2 中呼应 php

php - 如何使用 MIT appinventor 2 和 php 将图像插入 MYSQL 数据库?

mysql - 如何将我的新电子商务数据库与旧的实体库存同步

mysql - 使用 having > 1 same column 1 but other column 2 选择行