Php 加密和解密电子邮件地址的最短方法

Php 加密和解密电子邮件地址的最短方法,php,Php,我正在寻找一些关于使用PHP加密和解密电子邮件地址的最佳方法的指导 原因是: 我在我的网站上设置了一个引用脚本,它在URL中有一个GET变量,表示使用base64_encode()转换的电子邮件地址。我唯一的问题是我得到了一个很长的URL链接。不一定适合分享。我是否有更好的选择来生成更短的URL链接,而不是使用base64_encode()和base64_decode() 我得到的是: 基本上,有没有更简单的方法来缩短没有数据库的URL 创建一个电子邮件表 Create table emails

我正在寻找一些关于使用PHP加密和解密电子邮件地址的最佳方法的指导

原因是:

我在我的网站上设置了一个引用脚本,它在URL中有一个GET变量,表示使用base64_encode()转换的电子邮件地址。我唯一的问题是我得到了一个很长的URL链接。不一定适合分享。我是否有更好的选择来生成更短的URL链接,而不是使用base64_encode()和base64_decode()

我得到的是:

基本上,有没有更简单的方法来缩短没有数据库的URL

创建一个电子邮件表

Create table emails(
id int auto_increment,
val varchar(260), -- email field
);
现在把你的电子邮件放在这个表格里。并使用该id作为推荐链接。所以它会变成

http://www.domain.com/r/?r=3

当您获得
$\u获得['r']
对其进行清理并从数据库获取相关电子邮件

不要使用电子邮件地址,使用与数据库中的电子邮件匹配的id。请阅读关于回答问题的常见问题解答为什么不将电子邮件放在纯文本中?url编码应该足够用于电子邮件地址,任何人都可以对其进行解码。和我一样,
thejordangame@...
base64未加密考虑将电子邮件存储在使用加密的表中-使用salt,这样,如果表被泄露,电子邮件不是纯文本,但会导致数据无效,无法在其上搜索等。不要将加密数据存储在db中,密码除外(散列). 有一些例外——但如果你在这里发帖,可能会高于你的付费等级;-)