不好意思,是我没表达清楚.在 www.yahoo.com.cn 的邮件系统里,信箱地址 [email protected] 转化为 nop\u0040nop\u002Epbz 这样的字符保存在一个文本文件中,以便在javascript里调入使用.我是想问,有没有什么涵数能将 [email protected] 直接转化为 nop\u0040nop\u002Epbz ,谢谢!

解决方案 »

  1.   

    czhhua28(风之子)难道 md5("[email protected]") = "nop\u0040nop\u002Epbz" 吗?
      

  2.   

    mail中一般用base64编码 不过我看这个不一定是base64 不过应该是那种原理  你可以google一下关于base64的东东来看看
      

  3.   

    顶,它对汉字没有转换.北京@中国.com  ==>  北京\u0040中国\u002Earg可以看出来,@  ==> \u0040
    .  ==> \u002E
    net ==> arg
    com ==> pbz
      

  4.   

    上面是北京@中国.net  ==>  北京\u0040中国\u002Earg
      

  5.   

    这无非是自己设定的一算法,具体如下:
    <?php
    function foo($s){
    $s=strtolower($s);
    $m=13; //位移量
    for($i=0;$i<strlen($s);$i++){
    $pord=ord(substr($s, $i, 1));
    if($pord>160){
    $r.=substr($s, $i, 2);
    $i++;
    }elseif($pord<ord('A')){
    $r.='\u'.sprintf('%04s', strtoupper(dechex($pord)));
    }elseif($pord>=ord('a') and $prod<=ord('z')){
    $lord=$pord+$m;
    $lord=$lord>ord('z')?($lord-26):$lord;
    $r.=chr($lord);
    }
    }
    return $r;
    }
    echo foo('[email protected]');
    echo '<br>';
    echo foo('北京@中国.net');
    ?>