zoukankan      html  css  js  c++  java
  • PHP中文名加密

    <?php
    function encryptName($name) {
        $encrypt_name = '';
        //判断是否包含中文字符
        if(preg_match("/[x{4e00}-x{9fa5}]+/u", $name)) {
            //按照中文字符计算长度
            $len = mb_strlen($name, 'UTF-8');
            //echo '中文';
            if($len >= 3){
                //三个字符或三个字符以上掐头取尾,中间用*代替
                $encrypt_name = mb_substr($name, 0, 1, 'UTF-8') .str_repeat('*',$len-2). mb_substr($name, -1, 1, 'UTF-8');
            } elseif($len === 2) {
                //两个字符
                $encrypt_name = mb_substr($name, 0, 1, 'UTF-8') . '*';
            }
        } else {
            //按照英文字串计算长度
            $len = strlen($name);
            //echo 'English';
            if($len >= 3) {
                //三个字符或三个字符以上掐头取尾,中间用*代替
                $encrypt_name = substr($name, 0, 1)  .str_repeat('*',$len-2). substr($name, -1);
            } elseif($len === 2) {
                //两个字符
                $encrypt_name = substr($name, 0, 1) . '*';
            }
        }
        return $encrypt_name;
    }
    
    echo encryptName('张三').PHP_EOL;
    echo encryptName('诸葛亮').PHP_EOL;
    echo encryptName('西门飘雪').PHP_EOL;
    echo encryptName('Eden').PHP_EOL;
    
    张*
    诸*亮
    西**雪
    E**n
    
  • 相关阅读:
    OC2_数组操作
    OC1_数组创建
    OC6_字符串练习
    Python3学习笔记12-定义函数及调用
    Python3学习笔记11-循环语句
    Python3学习笔记10-条件控制
    Python3学习笔记09-字典
    Python3学习笔记08-tuple
    Python3学习笔记07-List
    Python3学习笔记05-数字
  • 原文地址:https://www.cnblogs.com/jiqing9006/p/11009184.html
Copyright © 2011-2022 走看看