01/10/2018, 00:48
Giải thuật giải mã địa chỉ email
Mình có đoạn mã javascript như sau:
http://www.snoopcode.com/html/examples/html-address-tag
/* <![CDATA[ */
(function(d, s, a, i, j, r, l, m, t) {
try {
l = d.getElementsByTagName('a');
t = d.createElement('textarea');
for (i = 0; l.length - i; i++) {
try {
a = l[i].href;
s = a.indexOf('/cdn-cgi/l/email-protection');
m = a.length;
if (a && s > -1 && m > 28) {
j = 28 + s;
s = ';
if (j < m) {
r = '0x' + a.substr(j, 2) | 0;
for (j += 2; j < m && a.charAt(j) != 'X'; j += 2) s += '%' + ('0' + ('0x' + a.substr(j, 2) ^ r).toString(16)).slice(-2);
j++;
s = decodeURIComponent(s) + a.substr(j, m - j)
}
t.innerHTML = s.replace(/</g, '<').replace(/>/g, '>');
l[i].href = 'mailto:' + t.value
}
} catch (e) {}
}
} catch (e) {}
})(document); /* ]]> */
Đoạn mã này sau khi chạy sẽ trả về kết quả email như sau: webmaster@somedomain.com
Bạn nào pro PHP có thể viết lại đoạn mã này dưới dạng PHP không?
Bài liên quan
Của bạn đây: Get code