PHP基于自定义类随机生成姓名的方法示例


Posted in PHP onAugust 05, 2017

本文实例讲述了PHP基于自定义类随机生成姓名的方法。分享给大家供大家参考,具体如下:

自定义类rndChinaName.class.php:

<?php
Class rndChinaName
{
  private $arrXing,$numbXing;
  private $arrMing,$numbMing;
  function rndChinaName()
  {
    $this->getXingList();
    $this->getMingList();
  }
  /*
  获取姓列表
  */
  private function getXingList()
  {
    $this->arrXing=array('赵','钱','孙','李','周','吴','郑','王','冯','陈','褚','卫','蒋','沈','韩','杨','朱','秦','尤','许','何','吕','施','张','孔','曹','严','华','金','魏','陶','姜','戚','谢','邹','喻','柏','水','窦','章','云','苏','潘','葛','奚','范','彭','郎','鲁','韦','昌','马','苗','凤','花','方','任','袁','柳','鲍','史','唐','费','薛','雷','贺','倪','汤','滕','殷','罗','毕','郝','安','常','傅','卞','齐','元','顾','孟','平','黄','穆','萧','尹','姚','邵','湛','汪','祁','毛','狄','米','伏','成','戴','谈','宋','茅','庞','熊','纪','舒','屈','项','祝','董','梁','杜','阮','蓝','闵','季','贾','路','娄','江','童','颜','郭','梅','盛','林','钟','徐','邱','骆','高','夏','蔡','田','樊','胡','凌','霍','虞','万','支','柯','管','卢','莫','柯','房','裘','缪','解','应','宗','丁','宣','邓','单','杭','洪','包','诸','左','石','崔','吉','龚','程','嵇','邢','裴','陆','荣','翁','荀','于','惠','甄','曲','封','储','仲','伊','宁','仇','甘','武','符','刘','景','詹','龙','叶','幸','司','黎','溥','印','怀','蒲','邰','从','索','赖','卓','屠','池','乔','胥','闻','莘','党','翟','谭','贡','劳','逄','姬','申','扶','堵','冉','宰','雍','桑','寿','通','燕','浦','尚','农','温','别','庄','晏','柴','瞿','阎','连','习','容','向','古','易','廖','庾','终','步','都','耿','满','弘','匡','国','文','寇','广','禄','阙','东','欧','利','师','巩','聂','关','荆','司马','上官','欧阳','夏侯','诸葛','闻人','东方','赫连','皇甫','尉迟','公羊','澹台','公冶','宗政','濮阳','淳于','单于','太叔','申屠','公孙','仲孙','轩辕','令狐','徐离','宇文','长孙','慕容','司徒','司空');
    $this->numbXing = count($this-> arrXing); //姓总数
  }
  /*
  获取名列表
  */
  private function getMingList()
  {
    $this->arrMing=array('伟','刚','勇','毅','俊','峰','强','军','平','保','东','文','辉','力','明','永','健','世','广','志','义','兴','良','海','山','仁','波','宁','贵','福','生','龙','元','全','国','胜','学','祥','才','发','武','新','利','清','飞','彬','富','顺','信','子','杰','涛','昌','成','康','星','光','天','达','安','岩','中','茂','进','林','有','坚','和','彪','博','诚','先','敬','震','振','壮','会','思','群','豪','心','邦','承','乐','绍','功','松','善','厚','庆','磊','民','友','裕','河','哲','江','超','浩','亮','政','谦','亨','奇','固','之','轮','翰','朗','伯','宏','言','若','鸣','朋','斌','梁','栋','维','启','克','伦','翔','旭','鹏','泽','晨','辰','士','以','建','家','致','树','炎','德','行','时','泰','盛','雄','琛','钧','冠','策','腾','楠','榕','风','航','弘','秀','娟','英','华','慧','巧','美','娜','静','淑','惠','珠','翠','雅','芝','玉','萍','红','娥','玲','芬','芳','燕','彩','春','菊','兰','凤','洁','梅','琳','素','云','莲','真','环','雪','荣','爱','妹','霞','香','月','莺','媛','艳','瑞','凡','佳','嘉','琼','勤','珍','贞','莉','桂','娣','叶','璧','璐','娅','琦','晶','妍','茜','秋','珊','莎','锦','黛','青','倩','婷','姣','婉','娴','瑾','颖','露','瑶','怡','婵','雁','蓓','纨','仪','荷','丹','蓉','眉','君','琴','蕊','薇','菁','梦','岚','苑','婕','馨','瑗','琰','韵','融','园','艺','咏','卿','聪','澜','纯','毓','悦','昭','冰','爽','琬','茗','羽','希','欣','飘','育','滢','馥','筠','柔','竹','霭','凝','晓','欢','霄','枫','芸','菲','寒','伊','亚','宜','可','姬','舒','影','荔','枝','丽','阳','妮','宝','贝','初','程','梵','罡','恒','鸿','桦','骅','剑','娇','纪','宽','苛','灵','玛','媚','琪','晴','容','睿','烁','堂','唯','威','韦','雯','苇','萱','阅','彦','宇','雨','洋','忠','宗','曼','紫','逸','贤','蝶','菡','绿','蓝','儿','翠','烟');
    $this->numbMing = count($this-> arrMing); //名总数
  }
  private function getXing()
  {
    return $this->arrXing [mt_rand(0,$this->numbXing)];
  }
  private function getMing()
  {
    return $this->arrMing [mt_rand(0,$this->numbMing)];
  }
  public function getName($type=0)
  {
    $name = '' ;
    switch($type)
    {
      case 1: //2字
      $name = $this->getXing().$this->getMing();
      break;
      case 2: //随机2、3个字
      $name = $this->getXing().$this->getMing();
      if(mt_rand (0,100)>50)$name .= $this->getMing();
      break;
      case 3: //只取姓
      $name = $this->getXing();
      break;
      case 4: //只取名
      $name = $this->getMing();
      break;
      case 0:
      default: //默认情况 1姓+2名
      $name = $this->getXing().$this->getMing().$this->getMing();
    }
    return $name;
  }
}
?>

index.php:

<?php
require("rndChinaName.class.php" );
$name=new rndChinaName();
echo $name->getName();
//输出:林艺菁
?>
PHP 相关文章推荐
用PHP实现验证码功能
Oct 09 PHP
一个显示天气预报的程序
Oct 09 PHP
php 数组的合并、拆分、区别取值函数集
Feb 15 PHP
PHP的preg_match匹配字符串长度问题解决方法
May 03 PHP
PHP实现绘制3D扇形统计图及图片缩放实例
Oct 01 PHP
基于php的微信公众平台开发入门实例
Apr 15 PHP
PHP内存使用情况如何获取
Oct 10 PHP
php上传图片获取路径及给表单字段赋值的方法
Jan 23 PHP
深入解析PHP的Yii框架中的event事件机制
Mar 17 PHP
php中namespace及use用法分析
Dec 06 PHP
laravel框架创建授权策略实例分析
Nov 22 PHP
PHP 实现 JSON 数据的编码和解码操作详解
Apr 22 PHP
PHP实现腾讯与百度坐标转换
Aug 05 #PHP
laravel5.4生成验证码的实例讲解
Aug 05 #PHP
CakePHP框架Model函数定义方法示例
Aug 04 #PHP
CakePHP框架Model关联对象用法分析
Aug 04 #PHP
PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法
Aug 04 #PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
Aug 04 #PHP
php7安装yar扩展的方法详解
Aug 03 #PHP
You might like
怎样在php中使用PDF文档功能
2006/10/09 PHP
Netbeans 8.2将支持PHP7 更精彩
2016/06/13 PHP
PHP类型约束用法示例
2016/09/28 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
2016/12/15 PHP
javascript页面上使用动态时间具体实现
2014/03/18 Javascript
浅谈Sizzle的“编译原理”
2015/04/14 Javascript
js实现的二级横向菜单条实例
2015/08/22 Javascript
jquery easyui datagrid实现增加,修改,删除方法总结
2016/05/25 Javascript
细说webpack源码之compile流程-rules参数处理技巧(1)
2017/12/26 Javascript
javascript实现对话框功能警告(alert 消息对话框)确认(confirm 消息对话框)
2019/05/07 Javascript
为vue项目自动设置请求状态的配置方法
2019/06/09 Javascript
vue实现移动端返回顶部
2020/10/12 Javascript
[01:07:34]DOTA2-DPC中国联赛定级赛 RNG vs Aster BO3第二场 1月9日
2021/03/11 DOTA
python开发的小球完全弹性碰撞游戏代码
2013/10/15 Python
Python中使用OpenCV库来进行简单的气象学遥感影像计算
2016/02/19 Python
Python中的time模块与datetime模块用法总结
2016/06/30 Python
如何高效使用Python字典的方法详解
2017/08/31 Python
Python中pandas模块DataFrame创建方法示例
2018/06/20 Python
浅谈解除装饰器作用(python3新增)
2018/10/15 Python
对python捕获ctrl+c手工中断程序的两种方法详解
2018/12/26 Python
python3编写ThinkPHP命令执行Getshell的方法
2019/02/26 Python
使用 Python 处理 JSON 格式的数据
2019/07/22 Python
Pandas时间序列重采样(resample)方法中closed、label的作用详解
2019/12/10 Python
python调用HEG工具批量处理MODIS数据的方法及注意事项
2020/02/18 Python
Python sklearn中的.fit与.predict的用法说明
2020/06/28 Python
Airbnb爱彼迎官网:成为爱彼迎房东,赚取收入
2019/03/14 全球购物
SQL数据库笔试题
2016/03/08 面试题
雪山饭庄的创业计划书范文
2014/01/18 职场文书
信息学院毕业生自荐信范文
2014/03/04 职场文书
小学一年级评语大全
2014/04/22 职场文书
幼儿园师德演讲稿
2014/05/06 职场文书
装饰工程师岗位职责
2014/06/08 职场文书
祝寿主持词
2015/07/02 职场文书
postgres之jsonb属性的使用操作
2021/06/23 PostgreSQL
Win10/Win11 任务栏替换成经典样式
2022/04/19 数码科技
阿里云ECS云服务器快照的概念以及如何使用
2022/04/21 Servers