PHP编写的随机名称生成器脚本
作者:转载自:更新时间:2009-9-14

 

如果正在运行游戏、编写故事或者一次性创建大批字符,有时会疲于应付不断出现的新名字。让我们看一看可用于解决此问题的一个简单随机名称生成器。首先,让我们创建两个简单数组 — 一个用于名字,一个用于姓氏。

清单 3. 名字和姓氏的两个简单数组

  $male = array(
  "William",
  "Henry",
  "Filbert",
  "John",
  "Pat",
  );
  $last = array(
  "Smith",
  "Jones",
  "Winkler",
  "Cooper",
  "Cline",
  );

然后就可以从每个数组中选择一个随机元素:echo $male[array_rand($male)] . ' ' . $last[array_rand($last)];。要一次性提取多个名称,只需混合数组并根据需要提取。

清单 4. 混合名称数组

  shuffle($male);
  shuffle($last);
  for ($i = 0; $i <= 3; $i++) {
  echo $male[$i] . ' ' . $last[$i];
  }

基于此基本概念,我们可以创建保存名字和姓氏的文本文件。如果在文本文件的每一行中存放一个名字,则可以轻松地用换行符分隔文件内容以构建源代码数组。

清单 5. 创建名称的文本文件

  $male = explode('\n', file_get_contents('names.female.txt'));
  $last = explode('\n', file_get_contents('names.last.txt'));

构建或查找一些好的名字文件(代码归档 中附带了一些文件),此后我们绝不再需要为名字烦恼。