4

PHP基本的に特殊文字を使用せずにエンコードされた電子メールアドレスのみを使用してエンコードする方法が必要ですが、元のアドレスa-zA-Z0-9にデコードすることができます。

例:

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

これは可能ですか?

4

2 に答える 2

7

Web セーフな base64 エンコードを実行できます。

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

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

+and/を base64 アルファベットからより無害な-andに変換します_。エンコード手順では、必要に応じて末尾の=文字も削除されます。

于 2012-12-29T23:54:36.737 に答える
1

等号を使用できる場合はbase64_encode()、およびを使用できます。base64_decode()

別のオプションはbin2hex()hex2bin()

于 2012-12-29T23:49:28.367 に答える