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

 更新时间:2017年08月05日 12:48:10   作者:qq_31912125  
这篇文章主要介绍了PHP基于自定义类随机生成姓名的方法,结合实例形式分析了php基于数组与字符串的随机数操作生成姓名的相关实现技巧,需要的朋友可以参考下

本文实例讲述了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();
//输出:林艺菁
?>

PS:这里再为大家推荐一款功能更为强大的在线工具供大家参考使用:

在线随机生成个人信息数据工具:
http://tools.jb51.net/aideddesign/rnd_userinfo

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数学运算技巧总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《PHP常用遍历算法与技巧总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

  • Session保存到数据库的php类分享

    Session保存到数据库的php类分享

    Session保存到数据库的php类,需要的朋友可以参考下。
    2011-10-10
  • 使用PHP来防止XSS攻击的方法

    使用PHP来防止XSS攻击的方法

    跨站脚本攻击(Cross-Site Scripting,XSS)是一种常见的Web应用程序安全漏洞,它允许攻击者将恶意脚本注入到受害者的浏览器中,本文给大家介绍了一个简单的示例代码,展示了如何使用PHP来防止XSS攻击,需要的朋友可以参考下
    2023-12-12
  • PHP实现时间日期友好显示实现代码

    PHP实现时间日期友好显示实现代码

    之前脚本之家小编也为大家分享过类似的时间日期显示代码,这里为大家分享的更加友好,大家根据说明调用即可
    2019-09-09
  • PHPStrom中实用的功能和快捷键大全

    PHPStrom中实用的功能和快捷键大全

    jetbrains出的PHPStrom很大程度上方便了PHP程序的编写,下面小编给大家总结些PHPStrom中实用的功能和快捷键大全,在编写的过程中变得又舒服又快捷,感兴趣的朋友一起看看吧
    2015-09-09
  • 实例讲解通过​PHP创建数据库

    实例讲解通过​PHP创建数据库

    在本篇文章里小编给大家分享了关于如何通过&#8203;PHP创建数据库的知识点内容,有需要的朋友们学习下。
    2019-01-01
  • 基于php iconv函数的使用详解

    基于php iconv函数的使用详解

    本篇文章是对php中iconv函数的使用进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • PHP中使用虚代理实现延迟加载技术

    PHP中使用虚代理实现延迟加载技术

    这篇文章主要介绍了PHP中使用虚代理实现延迟加载技术,延迟加载是一种领域模型设计一种架构模式,需要的朋友可以参考下
    2014-11-11
  • php 查找数组元素提高效率的方法详解

    php 查找数组元素提高效率的方法详解

    本文主要介绍了php查找数组元素提高效率的方法,具有很好的参考价值。下面跟着小编一起来看下吧
    2017-05-05
  • PHP实现数据四舍五入的方法小结【4种方法】

    PHP实现数据四舍五入的方法小结【4种方法】

    这篇文章主要介绍了PHP实现数据四舍五入的方法,结合实例形式总结分析了php使用number_format()、round()、sprintf()格式化及intval()等函数实现数据四舍五入的4种操作方法,需要的朋友可以参考下
    2019-03-03
  • 利用扩展的方式在PHP中使用Kafka的教程分享

    利用扩展的方式在PHP中使用Kafka的教程分享

    这篇文章主要为大家详细介绍了如何利用扩展的方式实现在PHP中使用Kafka,具体包括扩展安装和这种方式的基本操作,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-05-05

最新评论