Fork me on GitHub

我想在名字旁边显示邮箱地址,并对邮箱地址前面的部分加密,该怎么搞?

edited 2013年11月27日 问答求助

我想在名字旁边显示邮箱地址,并对邮箱地址前面的部分加密,该怎么搞?如下图
1212121221212121

回复

  • 在 /applications/vanilla/views/discussion/discussion.php
    和 /applications/vanilla/views/discussion/helper_functions.php
    这两个文件的 <span class="AuthorInfo"> 前面都加上这段

    <?php
                if (!function_exists('MaskEmail')) {
                   function MaskEmail( $email, $mask_char, $percent=50 ) 
                   { 
                      list( $user, $domain ) = preg_split("/@/", $email ); 
                      $len = strlen( $user ); 
                      $mask_count = floor( $len * $percent /100 ); 
                      $offset = floor( ( $len - $mask_count ) / 2 ); 
                      $masked = substr( $user, 0, $offset ) 
                             .str_repeat( $mask_char, $mask_count ) 
                             .substr( $user, $mask_count+$offset ); 
                      return( $masked.'@'.$domain ); 
                   }
                }
                ?>
                <span class="AuthorEmail"><?php echo MaskEmail($Author->Email,'*',70) ?></span>
    
  • edited 2013年11月28日 #3

    @chuck911 如果我想在话题列表页显示姓名和邮箱该咋改呢?
    2132123123

  • 在 /applications/vanilla/views/discussions/helper_functions.php 这个文件的WriteDiscussion函数里面,你自己试试看,我也不确定你要放在哪个位置

  • @sotony 那就在

    <div class="Title">
    

    前面吧

  • edited 2013年11月28日 #7

    @chuck911 嗯,具体怎么加 呢?加了你之前给的代码,无法正常显示。

  • 哦,这里要把 $Author->Email 换成 $First->Email

登录注册 才能回复。