/name-child-better

之前我们通过 rnn已经获得了许多好名字,再结合一下生辰八字,生二胎的朋友们有福了

Primary LanguagePLpgSQL

同事添二胎,为起名发愁,遂利用专业技能做小工具一个,闲置一年有余,开源给大家,希望有所帮助

输入出生年月日时(支持阴历)YYYY-MM-DD-HH,判断生辰八字,天干地支,星座,根据五行起名,名字库搜集自诗经楚辞等,再通过机器学习生成部分好名字


废话不多说,先看效果

curl localhost:9994/api/bazi -H 'Token:' --data 'date=2017-08-31-12'

image

主函数,入参是生辰,性别,单双名选择,阳历阴历,是否闰月

/**
     * @param $date
     *      string:YYYY-MM-DD-HH
     *      or
     *      int(10):timestamp
     * @param bool $noli 是否为农历,默认阳历(false)
     * @param bool $isLeap 是否为闰月,默认不是(false)
     */
    public function index()
    {

        $date = Input::get('date','2017-08-31-12');//YYYY-MM-DD-HH
        $this->sex = Input::get('sex',1);//1男,2女
        $this->danShuang = Input::get('danShuang',2);//1单,2双
        $noli = Input::get('noli', false);//是否为农历,默认阳历
        $isLeap = Input::get('isLeap', false);//是否为闰月,默认不是
        if (!$date) return;
        $this->calendar = new Calendar();
        if (is_numeric($date)) {
            $date = date("Y-m-d-H", $date);
        }
        $this->date = explode("-", $date);
        $this->noli = $noli;
        $this->isLeap = $isLeap;
        $this->__makeCalendarDate();
        $this->__makeHourGZ();
        $this->__makeGZWX();
        $this->__makeResWX();
        $this->__makeName();

        return $this->data;
    }

日期换算,需要用到一个包,包名:overtrue/chinese-calendar

protected function __makeCalendarDate()
    {
        if ($this->noli) {
            $this->data = $this->calendar->lunar($this->date[0], $this->date[1], $this->date[2], $this->isLeap);// 阴历
        } else {
            $this->data = $this->calendar->solar($this->date[0], $this->date[1], $this->date[2]);// 阳历
        }
    }

计算小时的干支

protected function __makeHourGZ()
    {
        $dayG = mb_substr($this->data['ganzhi_day'], 0, 1, 'UTF-8');
        $hour = !empty($this->date[3]) ? $this->date[3] : 0;
        $hour_index = (int)(($hour + 1) / 2) % 12;
        $this->data['ganzhi_hour'] = $this->hour_gan[$dayG] . $this->Zhi[$hour_index];
    }

计算八字五行

protected function __makeGZWX()
    {
        $ganzhi = $this->data['ganzhi_year'] . $this->data['ganzhi_month']
            . $this->data['ganzhi_day'] . $this->data['ganzhi_hour'];
        $gzwx = array();
        for ($i = 0; $i < 8; $i++) {
            $gz = mb_substr($ganzhi, $i, 1, 'UTF-8');
            if ($i % 2 == 0) {
                $wx = $this->Gan_WX[$gz];
            } else {
                $wx = $this->Zhi_WX[$gz];
            }
            $gzwx[$i] = [$gz => $wx];
        }
        $this->data['bazi_wuxing'] = $gzwx;
    }

获得名字的五行,得出五行缺什么

protected function __makeResWX()
    {
        $wuxing = $this->data['bazi_wuxing'];

        foreach ($wuxing as $value) {
            foreach ($value as $v) {
                $this->count_WX[$v]++;
            }
        }

        $this->data['ming_wuxing'] = array_search(max($this->count_WX), $this->count_WX);
        $this->data['que_wuxing'] = array_search(min($this->count_WX), $this->count_WX);
    }

根据五行起名

protected function __makeName()
    {
        $que_wuxing = $this->data['que_wuxing'];


        for($i=50;$i>0;$i--){
            if($que_wuxing == '金'){
                $word = $this->jin[array_rand($this->jin,1)];
            }
            if($que_wuxing == '木'){
                $word = $this->mu[array_rand($this->mu,1)];
            }
            if($que_wuxing == '水'){
                $word = $this->shui[array_rand($this->shui,1)];
            }
            if($que_wuxing == '火'){
                $word = $this->huo[array_rand($this->huo,1)];
            }
            if($que_wuxing == '土'){
                $word = $this->tu[array_rand($this->tu,1)];
            }
            $name = DB::table('good_name')
                ->where('sex',$this->sex)
                ->where('double_flag',$this->danShuang)
                ->where('name','like','%'.$word.'%')
                ->value('name');

            if(!empty($name)){
                $this->data['name'][] = $name;
                if(count($this->data['name'])>=5){
                    break;
                }
            }
        }


    }

常量定义

 protected $hour_gan = [
        '甲' => '甲',
        '乙' => '丙',
        '丙' => '戊',
        '丁' => '庚',
        '戊' => '壬',
        '己' => '甲',
        '庚' => '丙',
        '辛' => '戊',
        '壬' => '庚',
        '癸' => '壬'
    ];
    protected $Zhi = ['子', '丑', '寅', '卯', '辰', '巳', '午', '未', '申', '酉', '戌', '亥'];
    protected $Gan_WX = ['甲' => '木', '乙' => '木', '丙' => '火', '丁' => '火', '戊' => '土', '己' => '土', '庚' => '金', '辛' => '金', '壬' => '水', '癸' => '水'];
    protected $Zhi_WX = ['子' => '水', '丑' => '土', '寅' => '木', '卯' => '木', '辰' => '土', '巳' => '火', '午' => '火', '未' => '土', '申' => '金', '酉' => '金', '戌' => '土', '亥' => '水'];

    protected $count_WX = ['金' => 0, '木' => 0, '水' => 0, '火' => 0, '土' => 0];

    protected $jin = [
        "七", "三", "上", "专", "世", "丝", "丞", "主", "乘", "书", "事", "产", "人",
        "什", "仁", "仇", "仍", "仓", "仕", "仙", "仞", "仟", "任", "众", "伸", "佐",
        "作", "佺", "侃", "侪", "促", "俗", "俞", "信", "修", "倝", "倡", "倩", "倪",
        "偿", "储", "僖", "僧", "僳", "儒", "儿", "先", "兑", "兟", "入", "兮", "兹",
        "册", "再", "冲", "净", "凭", "出", "刀", "刍", "划", "则", "刚", "创", "初",
        "剀", "剑", "助", "劭", "势", "勘", "十", "千", "升", "参", "双", "叔", "取",
        "受", "叙", "史", "司", "唱", "商", "善", "宋", "宗", "宙", "实", "宠", "审",
        "宣", "宫", "宰", "宵", "宸", "寂", "寔", "察", "寸", "寿", "尊", "小", "少",
        "尚", "屡", "岁", "峙", "峻", "崇", "崈", "川", "州", "巡", "帅", "师", "帜",
        "帧", "席", "帱", "常", "庄", "序", "庚", "庥", "度", "庶", "徐", "得", "徽",
        "心", "忱", "忴", "思", "性", "总", "悉", "悦", "情", "想", "惺", "愁", "愈",
        "愉", "愔", "慈", "慎", "憇", "憧", "戈", "成", "战", "才", "扎", "承", "抒",
        "拙", "拯", "持", "挚", "捷", "授", "推", "措", "揌", "操", "攒", "敞", "数",
        "整", "敷", "斋", "斯", "新", "施", "旋", "旌", "族", "早", "旬", "时", "昌",
        "星", "春", "昨", "是", "昰", "昼", "晁", "晨", "晰", "暄", "暠", "暹", "曳",
        "曹", "曾", "替", "朝", "束", "枣", "柔", "查", "栽", "次", "歆", "正", "此",
        "殊", "氏", "氢", "爽", "犀", "狮", "率", "玕", "玗", "玟", "玠", "环", "玾",
        "珅", "珆", "珊", "珐", "珒", "珓", "珖", "珘", "珛", "珠", "珨", "珪", "珵",
        "珹", "琗", "琛", "琤", "琩", "琮", "琸", "珐", "玚", "瑖", "瑜", "瑞", "瑢",
        "瑧", "瑨", "璀", "璟", "璥", "璨", "瓒", "瓷", "甚", "生", "甡", "甥", "宁",
        "申", "畴", "皒", "盛", "真", "睁", "睢", "睬", "睿", "瞬", "矗", "社", "祖",
        "神", "祥", "禅", "穿", "窗", "竣", "童", "竦", "纤", "纯", "纾", "线", "组",
        "绅", "细", "织", "绍", "绒", "绚", "绣", "绪", "续", "绶", "绸", "综", "缜",
        "缮", "罡", "羲", "而", "耸", "聚", "聪", "肃", "胜", "胥", "臣", "臧", "舂",
        "舆", "舍", "舒", "舜", "舟", "舱", "舷", "船", "节", "着", "蚕", "蚩", "蜀",
        "蝉", "蟾", "衔", "衬", "衽", "袖", "裕", "襦", "西", "謦", "认", "设", "识",
        "词", "诏", "译", "诗", "诚", "询", "详", "诧", "说", "诵", "诸", "谂", "谆",
        "谌", "谒", "谕", "谖", "谥", "貂", "财", "贮", "贰", "资", "赏", "赐", "赛",
        "赜", "赞", "赤", "走", "超", "躇", "身", "车", "轫", "轼", "载", "辑", "辛",
        "辞", "迁", "迟", "述", "选", "逊", "逍", "途", "速", "造", "逾", "遵", "邃",
        "邵", "郝", "酉", "酌", "酥", "酬", "醒", "释", "金", "鉴", "铚", "銮", "鋆",
        "鑫", "针", "钊", "钏", "钐", "钒", "钓", "钗", "钛", "钟", "钡", "钢", "钤",
        "钥", "钦", "钧", "钫", "钮", "钰", "钱", "钲", "钹", "钻", "钿", "铁", "铂",
        "铃", "铄", "铅", "铉", "铌", "铎", "铜", "铠", "铨", "铫", "铭", "铮", "铰",
        "铱", "铵", "银", "铸", "铺", "铼", "链", "铿", "锁", "锄", "锆", "锇", "锋",
        "锌", "锐", "锚", "锡", "锤", "锦", "锬", "锭", "键", "锰", "锲", "锵", "锶",
        "锹", "锻", "锾", "镀", "镁", "镂", "镇", "镌", "镐", "镒", "镓", "镔", "镕",
        "镖", "镗", "镜", "镭", "镰", "闪", "问", "闾", "雀", "雏", "雕", "雼", "青",
        "靓", "靖", "静", "靛", "韶", "顺",
    ];
    protected $shui = [
        "万", "丕", "习", "乡", "买", "云", "互", "亥", "亨", "亩", "享", "仆", "付",
        "份", "仿", "伏", "伐", "休", "会", "伯", "伴", "佛", "佩", "侯", "保", "俯",
        "俸", "倍", "候", "傅", "兴", "冯", "冰", "况", "冷", "凊", "凛", "凝", "水",
        "永", "汀", "汇", "汉", "汋", "汌", "汍", "汐", "汕", "汛", "汝", "江", "池",
        "汤", "汩", "汪", "汴", "汵", "汶", "汾", "沁", "沂", "沃", "沅", "沆", "沈",
        "沉", "沐", "沔", "沙", "沛", "沣", "沦", "沧", "沨", "沩", "沪", "沫", "沱",
        "河", "治", "沼", "沾", "沿", "泂", "泇", "泉", "泊", "泓", "法", "泗", "泙",
        "泛", "泞", "泠", "泡", "波", "泥", "注", "泫", "泮", "泯", "泱", "泳", "泷",
        "泽", "泾", "洁", "洇", "洊", "洋", "洌", "洒", "洗", "洚", "洛", "洞", "津",
        "洧", "洪", "洮", "洱", "洲", "洳", "洵", "洸", "洹", "洺", "活", "洽", "派",
        "流", "浃", "浅", "浍", "济", "浏", "浑", "浒", "浓", "浙", "浚", "浛", "浣",
        "浦", "浩", "浪", "浮", "浴", "海", "浺", "涂", "涆", "涌", "涓", "涔", "涛",
        "涟", "涣", "涤", "涥", "润", "涧", "涪", "涯", "涴", "涵", "淀", "淄", "淅",
        "淇", "淋", "淐", "淑", "淘", "淙", "淞", "淡", "淬", "淮", "深", "淳", "添",
        "淼", "清", "渊", "渌", "渐", "渔", "渝", "渠", "渡", "渤", "渥", "渭", "港",
        "渱", "渲", "游", "渺", "湃", "湄", "湉", "湑", "湖", "湘", "湛", "湜", "湝",
        "湳", "湾", "溆", "溎", "源", "溟", "溢", "溥", "溪", "溯", "溱", "溶", "滂",
        "滇", "滉", "滋", "滐", "滔", "滟", "满", "滢", "滨", "漂", "演", "漠", "漩",
        "漪", "漫", "漱", "漾", "潆", "潇", "潍", "潘", "潜", "潞", "潢", "潭", "潮",
        "潺", "潼", "潾", "澄", "澈", "澉", "澍", "澎", "澔", "澕", "澜", "澧", "澳",
        "濂", "蒙", "濠", "濡", "濮", "濯", "瀚", "瀛", "瀞", "灏", "炬", "点", "煮",
        "熊", "熏", "熙", "父", "牟", "牧", "物", "状", "猛", "玄", "瓶", "甫", "畀",
        "畔", "痕", "白", "百", "皇", "皮", "盈", "盘", "盟", "目", "盷", "盼", "眉",
        "眠", "眸", "睎", "瞄", "矛", "矞", "碧", "祊", "祜", "禀", "福", "禧", "箔",
        "米", "粱", "繁", "红", "纷", "纹", "纺", "绂", "绗", "绘", "绥", "绵", "缅",
        "缚", "缤", "缥", "缦", "罕", "美", "翡", "翩", "翮", "翰", "翻", "耘", "聘",
        "肪", "脉", "航", "舫", "般", "舶", "艗", "艴", "苗", "范", "茳", "荆", "荡",
        "荥", "莫", "菏", "菠", "萍", "蒙", "藩", "藻", "虎", "虚", "虢", "蜂", "蜜",
        "行", "衍", "补", "表", "袓", "袤", "裘", "裱", "褒", "褓", "觅", "计", "训",
        "访", "评", "谋", "谟", "谧", "谱", "豪", "豹", "貌", "贝", "贸", "贺", "贾",
        "赋", "赟", "跋", "蹼", "轰", "辅", "辈", "辉", "辨", "边", "迈", "还", "迷",
        "逋", "逢", "遑", "邈", "邗", "邟", "邠", "邦", "邯", "邴", "邶", "郁", "合",
        "郇", "郛", "部", "配", "酣", "酩", "醇", "釜", "钚", "门", "闲", "闵", "闻",
        "闽", "阁", "阔", "阜", "防", "陂", "陌", "陪", "隃", "隈", "雄", "雨", "雩",
        "雪", "雯", "雱", "雷", "雾", "霁", "霄", "霆", "震", "霈", "霍", "霏", "沾",
        "霓", "霖", "霙", "霜", "霞", "露", "非", "韩", "俯", "项", "颁", "颇", "频",
        "颔", "风", "飑", "飒", "飙", "飚", "飞", "香", "馡", "馥", "马", "驳", "驸",
        "骈", "骠", "魂", "鱼", "鲂", "鲍", "鸠", "鸣", "鸿", "鹏", "鹤", "麦", "麻",
    ];
    protected $mu = [
        "木", "未", "本", "术", "朱", "朴", "朵", "机", "权", "杉", "杏", "材", "村",
        "杓", "杜", "杞", "杨", "杭", "杯", "杰", "杲", "杷", "杼", "松", "极", "构",
        "枇", "枋", "析", "林", "枚", "果", "枝", "枞", "枢", "枥", "枧", "枨", "枫",
        "枰", "枳", "枸", "柄", "柅", "柏", "柚", "柞", "柠", "柯", "柱", "柳", "柴",
        "柽", "柿", "栅", "标", "栈", "栉", "栊", "栋", "树", "栒", "栓", "栗", "栟",
        "校", "栩", "株", "栫", "样", "根", "格", "桀", "桁", "桂", "桃", "桄", "桅",
        "桉", "桐", "桑", "桓", "桔", "桠", "桢", "桤", "桥", "桦", "桧", "桷", "梃",
        "梅", "梒", "梓", "梡", "梢", "梣", "梦", "梧", "梭", "梯", "械", "梵", "检",
        "棉", "棋", "棌", "棒", "棕", "棚", "棠", "棣", "棨", "棫", "森", "棱", "棹",
        "棼", "椅", "椆", "椈", "植", "椐", "椴", "椽", "椿", "楗", "楙", "楚", "楟",
        "楠", "楣", "楦", "楫", "楮", "楷", "楸", "楹", "楼", "概", "榄", "榆", "榈",
        "榉", "榔", "榕", "榘", "榛", "榜", "榭", "榴", "盘", "槎", "槐", "槟", "槯",
        "槿", "樊", "樗", "樟", "模", "樨", "横", "樯", "樱", "樵", "樽", "橘", "橙",
        "橹", "檀", "檄", "檞", "檠", "檬", "欣", "款", "歇", "歌", "毅", "相", "科",
        "秴", "稀", "稕", "稷", "稻", "稼", "稽", "竹", "竺", "竽", "笃", "笄", "笆",
        "笒", "笔", "笗", "笙", "笛", "笠", "笥", "符", "第", "笭", "笮", "笳", "笺",
        "等", "筌", "筏", "筐", "筑", "答", "策", "筠", "筱", "筵", "筹", "简", "箐",
        "箕", "管", "箫", "箭", "箴", "篁", "篇", "篮", "篱", "簇", "簟", "簪", "籁",
        "籍", "粉", "耕", "联", "聿", "肖", "肯", "胤", "舰", "舸", "艺", "艽", "芃",
        "芄", "芊", "芋", "芍", "芏", "芑", "芒", "芗", "芙", "芜", "芝", "芠", "芣",
        "芥", "芦", "芩", "芪", "芫", "芬", "芭", "芯", "花", "芳", "芷", "芸", "芹",
        "芽", "芾", "苁", "苄", "苇", "苋", "苌", "苍", "苎", "苏", "苑", "苒", "苓",
        "苔", "苕", "苜", "苞", "苡", "苣", "若", "苎", "苪", "英", "苳", "苴", "苹",
        "苻", "苼", "苾", "茁", "茂", "茅", "茉", "茗", "茚", "茜", "茞", "茥", "茨",
        "茪", "茬", "茭", "茯", "茱", "茴", "茵", "茶", "茸", "茹", "茽", "荀", "荃",
        "草", "荋", "荏", "荐", "荑", "荒", "荔", "荙", "荛", "荜", "荞", "荟", "荠",
        "荢", "荣", "荦", "荩", "荪", "荫", "荭", "荮", "荶", "荷", "荸", "荹", "荺",
        "荻", "莀", "莅", "莆", "莉", "莋", "莎", "莐", "莑", "莒", "莓", "莘", "莛",
        "莞", "莟", "莨", "莩", "莪", "莱", "莲", "莳", "获", "莹", "莺", "莼", "莽",
        "菀", "菁", "菂", "菅", "菇", "菉", "菊", "菖", "菘", "菡", "菪", "菱", "菲",
        "菽", "萁", "萂", "萃", "萄", "萌", "萗", "萝", "萤", "营", "萦", "萧", "萨",
        "萪", "萱", "萸", "萼", "葃", "葆", "葇", "葎", "葑", "葛", "葟", "葡", "葭",
        "葮", "葳", "葵", "葹", "蒂", "蒄", "蒟", "蒨", "蒲", "蒸", "蒹", "蓁", "蓄",
        "蓉", "蓓", "蓕", "蓝", "蓬", "蓼", "蔀", "蔓", "蔚", "蔟", "蔡", "蔬", "蔷",
        "蕃", "蕉", "蕊", "蕖", "蕙", "蕤", "蕴", "蕾", "薇", "薏", "薛", "薪", "薷",
        "藏", "藓", "藜", "藠", "藤", "藿", "蘅", "虬", "虹", "蛟", "见", "观", "规",
        "觉", "觏", "觐", "角", "谷", "赣", "赫", "起", "趁", "躬", "辊", "轨", "轭",
        "轲", "轻", "辊", "过", "近", "迥", "迦", "迭", "逑", "遇", "遒", "隽", "雁",
        "雅", "集",
    ];
    protected $huo = [
        "丁", "丙", "丛", "两", "中", "丰", "临", "丹", "丽", "乃", "之", "乐", "了",
        "争", "二", "亭", "亮", "亶", "从", "仑", "仝", "代", "令", "仲", "传", "伦",
        "伶", "佁", "佃", "住", "体", "佟", "佰", "侗", "侣", "侦", "侬", "俊", "俐",
        "俪", "倓", "倜", "倬", "值", "停", "傣", "儋", "兆", "光", "党", "全", "六",
        "典", "内", "冉", "农", "冬", "凉", "凌", "刘", "利", "勺", "午", "卓", "单",
        "南", "卢", "厅", "历", "厉", "厥", "叠", "另", "只", "召", "台", "同", "吕",
        "听", "呈", "哲", "唐", "囡", "团", "图", "夏", "多", "大", "天", "太", "头",
        "奈", "奏", "奖", "女", "奴", "妡", "妥", "妮", "妲", "妶", "姈", "姊", "姐",
        "姞", "姯", "姳", "娄", "娌", "娘", "娜", "娢", "娣", "娳", "婷", "媛", "嫙",
        "嫚", "嫝", "娘", "宁", "宅", "宕", "定", "宝", "寍", "对", "寻", "导", "将",
        "尔", "尘", "年", "庐", "底", "庞", "庭", "廷", "弄", "弋", "当", "录", "彤",
        "彨", "彰", "彻", "征", "待", "律", "徒", "循", "徭", "征", "德", "志", "忠",
        "念", "怜", "恁", "恋", "恕", "恬", "恺", "悌", "惕", "戴", "托", "执", "扬",
        "抟", "抡", "拉", "拓", "招", "择", "拿", "振", "挺", "掣", "摄", "摆", "摇",
        "撰", "支", "政", "敕", "敦", "斓", "斗", "旅", "日", "旦", "旨", "旲", "旻",
        "昆", "昉", "昊", "易", "昕", "昙", "昜", "映", "昭", "昮", "昱", "昸", "显",
        "晃", "晋", "晓", "晔", "晗", "晞", "晟", "晢", "晴", "晶", "晸", "智", "暖",
        "曜", "曣", "曦", "曷", "朔", "朕", "朗", "李", "来", "梁", "梨", "止", "段",
        "殿", "毓", "求", "泰", "浥", "湟", "滕", "火", "灯", "灵", "灶", "灼", "灿",
        "炀", "炅", "炆", "炉", "炎", "炓", "炔", "炘", "炜", "炫", "炯", "炳", "炼",
        "炽", "烁", "烄", "烈", "烋", "烘", "烜", "烟", "烨", "热", "烽", "焓", "焕",
        "焘", "焙", "焜", "焠", "焮", "焯", "焰", "焱", "煊", "煌", "煓", "煜", "照",
        "熀", "熔", "熠", "颎", "熹", "燔", "燠", "灿", "燧", "燮", "爵", "爻", "特",
        "犁", "狄", "瓴", "甜", "田", "男", "甸", "町", "畅", "畋", "留", "略", "畹",
        "登", "的", "皑", "皞", "盏", "直", "盾", "睐", "督", "睦", "瞅", "瞳", "瞻",
        "矍", "知", "礼", "祉", "祝", "祯", "禄", "离", "种", "秦", "秧", "秩", "积",
        "程", "稔", "窈", "立", "站", "章", "端", "粮", "粼", "繇", "纳", "纵", "纶",
        "练", "绎", "绦", "绩", "绫", "绰", "绿", "缇", "缎", "缓", "缔", "缭", "罔",
        "罗", "羚", "翀", "翃", "翎", "耀", "耐", "耳", "耽", "耿", "聃", "聆", "职",
        "肨", "胄", "胆", "能", "腊", "腾", "自", "至", "致", "臻", "舵", "艇", "良",
        "虞", "蛋", "蝶", "衷", "裎", "裳", "褚", "襄", "览", "詹", "誊", "让", "讯",
        "讷", "论", "证", "诤", "诺", "读", "谅", "谈", "谛", "谭", "豆", "贞", "质",
        "贽", "赖", "赢", "赵", "足", "路", "跳", "践", "踆", "踌", "蹈", "转", "轮",
        "轴", "轶", "轸", "轺", "辂", "辇", "辙", "辽", "达", "迅", "进", "连", "迩",
        "迪", "迹", "适", "逖", "通", "逞", "遂", "道", "遥", "邓", "那", "邻", "郅",
        "郎", "郦", "郸", "都", "醍", "采", "里", "重", "量", "钬", "长", "闰", "闼",
        "阆", "阐", "队", "阵", "陀", "际", "陆", "陇", "陈", "除", "陵", "陶", "隆",
        "隶", "雉", "雳", "零", "鞅", "韬", "颙", "顶", "顽", "顿", "领", "题", "飘",
        "黛", "鼎", "鼐", "龄", "龙",
    ];
    protected $tu = [
        "一", "与", "丫", "丸", "为", "乙", "也", "予", "于", "亚", "亦", "亿", "仔",
        "以", "伊", "伍", "优", "伟", "似", "位", "佑", "余", "佚", "侑", "依", "侞",
        "俑", "傐", "傲", "兀", "允", "充", "养", "冶", "准", "凹", "切", "勇", "勋",
        "勖", "医", "卫", "原", "又", "友", "右", "叶", "员", "呜", "咏", "唯", "喁",
        "喦", "因", "园", "围", "囿", "圆", "土", "圣", "圩", "圭", "圯", "地", "圳",
        "圻", "坂", "均", "坊", "坎", "块", "坛", "坜", "坡", "坤", "坦", "坪", "坭",
        "垅", "型", "垒", "垓", "垚", "垠", "垣", "垦", "垲", "埃", "城", "埏", "埔",
        "埕", "埙", "埜", "域", "埮", "培", "基", "埼", "堂", "堃", "堆", "堉", "堡",
        "堤", "堦", "堭", "堰", "塅", "塘", "塾", "墀", "境", "墉", "墐", "墙", "墝",
        "增", "墩", "壁", "壅", "壑", "壕", "壤", "壹", "夜", "央", "夷", "奎", "奥",
        "婴", "宇", "安", "完", "宛", "宥", "宴", "容", "寅", "尉", "尤", "尹", "山",
        "屴", "屹", "屿", "岍", "岐", "岗", "岘", "岚", "岦", "岩", "岫", "岭", "岷",
        "岽", "岿", "峄", "峋", "峘", "峡", "峤", "峥", "峧", "峨", "峭", "崌", "崎",
        "崑", "崖", "崚", "崛", "崟", "崡", "崧", "崨", "崮", "崴", "嵂", "嵃", "嵈",
        "嵋", "嵎", "嵑", "嵘", "嵙", "嵚", "嵢", "嵩", "嵫", "嵹", "嶂", "嶒", "嶙",
        "嶝", "巅", "巍", "己", "帏", "帷", "幼", "幽", "应", "庸", "延", "异", "引",
        "彝", "彧", "影", "徫", "忆", "怡", "怿", "恩", "恽", "悠", "惟", "惯", "意",
        "慰", "懿", "戊", "戌", "戍", "抑", "拥", "揖", "援", "攸", "敖", "旖", "旺",
        "昀", "昶", "晏", "有", "欧", "欲", "殷", "氤", "温", "焉", "燕", "爰", "爱",
        "牡", "牵", "犹", "猷", "王", "玥", "玮", "琬", "瑕", "瑛", "瑷", "璎", "璧",
        "瓦", "用", "甬", "由", "画", "畏", "畯", "疄", "疆", "益", "盎", "眙", "眺",
        "矣", "矶", "矾", "矿", "砚", "砜", "砥", "砺", "砻", "砾", "础", "硌", "硕",
        "确", "碁", "碚", "碟", "磁", "磊", "磐", "磨", "礡", "禹", "稚", "稳", "窕",
        "约", "纬", "维", "缘", "缨", "羊", "羭", "羽", "羾", "翁", "翂", "翌", "翔",
        "翕", "翙", "翞", "翟", "耶", "育", "胃", "胡", "膺", "艮", "艳", "艾", "融",
        "衡", "衣", "袁", "袂", "袅", "袔", "袺", "裔", "褆", "褕", "褘", "褛", "要",
        "誉", "诒", "话", "诞", "诣", "诩", "谓", "谙", "豌", "豫", "贻", "越", "跃",
        "踊", "蹦", "轩", "轾", "辕", "辰", "迎", "运", "远", "逵", "逸", "遐", "遨",
        "邑", "邨", "邺", "郓", "郧", "鄞", "野", "闺", "阅", "阪", "阳", "阿", "附",
        "院", "隐", "雍", "鞍", "韦", "韫", "音", "韵", "顼", "颐", "饮", "饴", "馀",
        "骜", "鳌", "鷨", "鸟", "鸢", "鸥", "鸳", "鸻", "鹦", "黄",
    ];

鸣谢:搜集整理了代码和资料从github 上,时间太久了,也不知道都从谁那里借鉴过,感谢全体开源同仁吧。