PHP生成随机中文姓名 阿星小栈

PHP生成随机中文姓名 数据库

//随机生成用户名
     public function generateName(){ $arrXing = $this->getXingList(); $numbXing = count($arrXing); $arrMing = $this->getMingList(); $numbMing = count($arrMing); $Xing = $arrXing[mt_rand(0,$numbXing-1)]; $Ming = $arrMing[mt_rand(0,$numbMing-1)].$arrMing[mt_rand(0,$numbMing-1)]; $name = $Xing.$Ming; return $name; }

 

//获取姓氏 
public function getXingList(){ $arrXing=array('','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','', '','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','', '','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','', '','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','', '','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','', '','','','','','','','','','','','','','','','怀','','','','','','','','','','','','','','','','','','','','', '','','','','','','寿','','','','','','','','','','','','','','','','','','','','','','','','','','','','','', '','广','','','','','','','','','','','司马','上官','欧阳','夏侯','诸葛','闻人','东方','赫连','皇甫','尉迟','公羊','澹台','公冶','宗政','濮阳','淳于','单于','太叔', '申屠','公孙','仲孙','轩辕','令狐','徐离','宇文','长孙','慕容','司徒','司空'); return $arrXing; } //获取名字 public function getMingList(){ $arrMing=array('','','','','','','','','','','','','','','','','','','广','','','','','','','','','','','','','','','' ,'','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','' ,'','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','' ,'','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','' ,'','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','' ,'','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','' ,'','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','' ,'','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','' ,'','','','','','','','','','','','','','','鸿','','','','','','','','','','','','','','','','','','','','','','' ,'','','','','','','','','','','','','','绿','','','',''); return $arrMing; }

 

public function nameInDatabase($num = 100){ $nameArray = []; for ($i=0;$i<$num;$i++){ $nameArray[] = $this->generateName(); } $nameArrayNew = array_unique($nameArray); $countNew = count($nameArray); $countRep = $num - $countNew; $numSuccess = 0; foreach ($nameArrayNew as $k=>$v){ $res = TempUser::create(['name'=>$v]); if($res){ $numSuccess++; } echo $k+1; } echo "共生成".$num."条,去重".$countRep."条,导入成功".$numSuccess.""; }

 

//调用方法生成名字并存到数据库,这里默认生成100个名字,数量可自定义this

$this->nameInDatabase(3000);      
相关文章
相关标签/搜索