我在用:
\n\n random_bytes(30);\nRun Code Online (Sandbox Code Playgroud)\n\n为我的程序生成一个随机字符串。然后将该字符串存储在 mysql 数据库中。但是,当我运行该函数时,我得到一个输出,例如
\n\nT\xef\xbf\xbd\xd4\xb8\xef\xbf\xbd@(\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdm\nRun Code Online (Sandbox Code Playgroud)\n\n其中包括不可读的字符。当我尝试将其存储在数据库中时,\xef\xbf\xbd 字符未存储,因此这意味着该字符串未正确保存。
\n\n我怎样才能让它返回一个只包含可读字符的字符串,并且不会在我的 mysql 数据库中丢失?
\n\n谢谢!
\nrandom_bytes 生成任意长度的加密随机字节字符串,适合加密使用,例如生成盐、密钥或初始化向量时。像这样使用
$bytes = random_bytes(5);
echo bin2hex($bytes);
Run Code Online (Sandbox Code Playgroud)