用户信息中没有手机号,通过用户名的哈希来生成一个手机号。
package mainimport ("crypto/md5""fmt""math/big")func main() {// 假设用户名为"john"username := "john"// 生成一个128位的MD5哈希值hash := md5.Sum([]byte(username))// 将哈希值转换为一个大整数num := new(big.Int)num.SetBytes(hash[:])// 取前9位数字作为手机号码mobile := num.Mod(num, big.NewInt(1e9)).String()// 在手机号码前面添加"13"-"19"中的一个数字mobile = "1" + string("3456789"[num.Mod(num, big.NewInt(7)).Uint64()]) + mobilefmt.Println("Username:", username)fmt.Println("Mobile:", mobile)}