繁体   English   中英

PHP编码电子邮件地址

[英]PHP encode e-mail address

我需要在PHP中使用a-zA-Z0-9对电子邮件地址进行编码,因此基本上编码时没有任何特殊字符,但是能够将其解码回原始版本。

例:

 john+doe@mydomain.com => ENCODE => n6bvJjdh7w6QbdVB373483ydbKus7Qx
 n6bvJjdh7w6QbdVB373483ydbKus7Qx => DECODE => john+doe@mydomain.com

这甚至可能吗?

你可以做一个web safe base64编码:

// encode
$email_encoded = rtrim(strtr(base64_encode($email), '+/', '-_'), '=');

// decode
$email_decoded = base64_decode(strtr($email_encoded, '-_', '+/'));

它将+/从base64字母转换为更无害的-_ 编码步骤还会在需要时删除trailing =字符。

如果允许等号,则可以使用base64_encode()base64_decode()

另一种选择是bin2hex()hex2bin()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM