试试binhex函数
从上面的网站:
<?php
$str = "Hello world!";
echo bin2hex($str) . "<br />";
echo pack("H*",bin2hex($str)) . "<br />";
?>
Run Code Online (Sandbox Code Playgroud)
产出
48656c6c6f20776f726c6421
Hello world!
Run Code Online (Sandbox Code Playgroud)
PHP整数可以存储的信息量是有限的.您可以存储在字符串中的信息量不是(至少如果字符串不是非常长的话.)
因此,您需要将任意长度的字符串压缩为非任意长度的整数.没有数据丢失,这是不可能的.
您可以使用散列算法,但散列算法可能始终存在冲突.特别是如果要将字符串散列为整数,则冲突概率非常高 - 整数只能存储非常少的数据.
因此,您应该坚持使用电子邮件或使用自动递增整数字段.