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实现与ASP Banner组件相似的类
Oct 09 PHP
PHP Squid中可缓存的动态网页设计
Sep 17 PHP
mysql_num_rows VS COUNT 效率问题分析
Apr 23 PHP
去除php注释和去除空格函数分享
Mar 13 PHP
PHP多线程类及用法实例
Dec 03 PHP
php根据日期显示所在星座的方法
Jul 13 PHP
php实现自定义中奖项数和概率的抽奖函数示例
May 26 PHP
PHP调用微博接口实现微博登录的方法示例
Sep 22 PHP
laravel中的一些简单实用功能
Nov 03 PHP
PHP实现获取毫秒时间戳的方法【使用microtime()函数】
Mar 01 PHP
php简单计算权重的方法示例【适合抽奖类应用】
Jun 10 PHP
Laravel框架Auth用户认证操作实例分析
Sep 29 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 表单提交给自己
2008/07/24 PHP
php实现计算百度地图坐标之间距离的方法
2016/05/05 PHP
Yii2中YiiBase自动加载类、引用文件方法分析(autoload)
2016/07/25 PHP
Laravel中encrypt和decrypt的实现方法
2017/09/24 PHP
JavaScript实现动态增加文件域表单
2009/02/12 Javascript
jQuery源码分析之Event事件分析
2010/06/07 Javascript
jquery插件之easing 动态菜单
2010/08/21 Javascript
8款非常棒的响应式jQuery 幻灯片插件推荐
2012/02/02 Javascript
使用JavaScript 实现对象 匀速/变速运动的方法
2013/05/08 Javascript
jquerymobile局部渲染的各种刷新方法小结
2014/03/05 Javascript
JQuery实现动态表格点击按钮表格增加一行
2014/08/24 Javascript
jQuery源码分析之jQuery.fn.each与jQuery.each用法
2015/01/23 Javascript
深入理解JavaScript系列(29):设计模式之装饰者模式详解
2015/03/03 Javascript
jQuery实现横向带缓冲的水平运动效果(附demo源码下载)
2016/01/29 Javascript
JS获取url参数、主域名的方法实例分析
2016/08/03 Javascript
JavaScript实现的搜索及高亮显示功能示例
2017/08/14 Javascript
JS库 Highlightjs 添加代码行号的实现代码
2017/09/13 Javascript
CentOS环境中MySQL修改root密码方法
2018/01/07 Javascript
如何快速解决JS或Jquery ajax异步跨域的问题
2018/01/08 jQuery
Vue头像处理方案小结
2018/07/26 Javascript
浅析Vue 和微信小程序的区别、比较
2018/08/03 Javascript
nodejs aes 加解密实例
2018/10/10 NodeJs
[52:31]VP vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
在Python中操作时间之strptime()方法的使用
2020/12/30 Python
详解常用查找数据结构及算法(Python实现)
2016/12/09 Python
Python 关于反射和类的特殊成员方法
2017/09/14 Python
Python cookbook(数据结构与算法)实现查找两个字典相同点的方法
2018/02/18 Python
python使用turtle库与random库绘制雪花
2018/06/22 Python
django session完成状态保持的方法
2018/11/27 Python
Python解决pip install时出现的Could not fetch URL问题
2019/08/01 Python
基于python traceback实现异常的获取与处理
2019/12/13 Python
python关闭占用端口方式
2019/12/17 Python
详解Tensorflow不同版本要求与CUDA及CUDNN版本对应关系
2020/08/04 Python
pycharm 实现复制一行的快捷键
2021/01/15 Python
课外访万家心得体会
2014/09/03 职场文书
聋哑人盗窃罪辩护词
2015/05/21 职场文书