我需要在PHP
中使用a-zA-Z0-9
编码电子邮件地址的方式,因此基本上编码时没有任何特殊字符,但是能够将其解码回原始文件。
示例:
john+doe@mydomain.com => ENCODE => n6bvJjdh7w6QbdVB373483ydbKus7Qx
n6bvJjdh7w6QbdVB373483ydbKus7Qx => DECODE => john+doe@mydomain.com
这甚至可能吗?
答案 0 :(得分:7)
您可以进行网络安全base64编码:
// encode
$email_encoded = rtrim(strtr(base64_encode($email), '+/', '-_'), '=');
// decode
$email_decoded = base64_decode(strtr($email_encoded, '-_', '+/'));
它会在更无害的+
和/
中转换base64字母表中的-
和_
。编码步骤还会在需要时删除尾随的=
字符。
答案 1 :(得分:1)
如果您允许使用等号,则可以使用base64_encode()
和base64_decode()