$" />
牛骨文教育服务平台(让学习变的简单)
博文笔记

PHP用*号替代姓名除第一个字之外的字符

创建时间:2017-09-22 投稿人: 浏览次数:1007
/*
 * 作用:用*号替代姓名除第一个字之外的字符
 * 参数:
 *
 *
 * 返回值:string
 */
function starReplace($name, $num = 0)
{
    if ($num && mb_strlen($name, "UTF-8") > $num) {
        return mb_substr($name, 0, 4) . "*";
    }

    if ($num && mb_strlen($name, "UTF-8") <= $num) {
        return $name;
    }

    $doubleSurname = [
        "欧阳", "太史", "端木", "上官", "司马", "东方", "独孤", "南宫",
        "万俟", "闻人", "夏侯", "诸葛", "尉迟", "公羊", "赫连", "澹台", "皇甫", "宗政", "濮阳",
        "公冶", "太叔", "申屠", "公孙", "慕容", "仲孙", "钟离", "长孙", "宇文", "司徒", "鲜于",
        "司空", "闾丘", "子车", "亓官", "司寇", "巫马", "公西", "颛孙", "壤驷", "公良", "漆雕", "乐正",
        "宰父", "谷梁", "拓跋", "夹谷", "轩辕", "令狐", "段干", "百里", "呼延", "东郭", "南门", "羊舌",
        "微生", "公户", "公玉", "公仪", "梁丘", "公仲", "公上", "公门", "公山", "公坚", "左丘", "公伯",
        "西门", "公祖", "第五", "公乘", "贯丘", "公皙", "南荣", "东里", "东宫", "仲长", "子书", "子桑",
        "即墨", "达奚", "褚师", "吴铭"
    ];

    $surname = mb_substr($name, 0, 2);
    if (in_array($surname, $doubleSurname)) {
        $name = mb_substr($name, 0, 2) . str_repeat("*", (mb_strlen($name, "UTF-8") - 2));
    } else {
        $name = mb_substr($name, 0, 1) . str_repeat("*", (mb_strlen($name, "UTF-8") - 1));
    }


    return $name;
}
/*
 * 作用:用*号替代姓名除第一个字之外的字符
 * 参数:
 *
 *
 * 返回值:string
 */
function starReplace($name, $num = 0)
{
    if ($num && mb_strlen($name, "UTF-8") > $num) {
        return mb_substr($name, 0, 4) . "*";
    }

    if ($num && mb_strlen($name, "UTF-8") <= $num) {
        return $name;
    }

    $doubleSurname = [
        "欧阳", "太史", "端木", "上官", "司马", "东方", "独孤", "南宫",
        "万俟", "闻人", "夏侯", "诸葛", "尉迟", "公羊", "赫连", "澹台", "皇甫", "宗政", "濮阳",
        "公冶", "太叔", "申屠", "公孙", "慕容", "仲孙", "钟离", "长孙", "宇文", "司徒", "鲜于",
        "司空", "闾丘", "子车", "亓官", "司寇", "巫马", "公西", "颛孙", "壤驷", "公良", "漆雕", "乐正",
        "宰父", "谷梁", "拓跋", "夹谷", "轩辕", "令狐", "段干", "百里", "呼延", "东郭", "南门", "羊舌",
        "微生", "公户", "公玉", "公仪", "梁丘", "公仲", "公上", "公门", "公山", "公坚", "左丘", "公伯",
        "西门", "公祖", "第五", "公乘", "贯丘", "公皙", "南荣", "东里", "东宫", "仲长", "子书", "子桑",
        "即墨", "达奚", "褚师", "吴铭"
    ];

    $surname = mb_substr($name, 0, 2);
    if (in_array($surname, $doubleSurname)) {
        $name = mb_substr($name, 0, 2) . str_repeat("*", (mb_strlen($name, "UTF-8") - 2));
    } else {
        $name = mb_substr($name, 0, 1) . str_repeat("*", (mb_strlen($name, "UTF-8") - 1));
    }


    return $name;
}

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。