You are here

public function GdprDumpUtilRandom::word in General Data Protection Regulation 7

Generate a string that looks like a word.

Letters only, alternating consonants and vowels.

Parameters

int $length: The desired word length.

Return value

string The generate random word.

File

modules/gdpr_dump/src/GdprDumpUtilRandom.php, line 73

Class

GdprDumpUtilRandom
Defines a utility class for creating random data.

Code

public function word($length) {
  mt_srand((double) microtime() * 1000000);
  $vowels = [
    "a",
    "e",
    "i",
    "o",
    "u",
  ];
  $cons = [
    "b",
    "c",
    "d",
    "g",
    "h",
    "j",
    "k",
    "l",
    "m",
    "n",
    "p",
    "r",
    "s",
    "t",
    "u",
    "v",
    "w",
    "tr",
    "cr",
    "br",
    "fr",
    "th",
    "dr",
    "ch",
    "ph",
    "wr",
    "st",
    "sp",
    "sw",
    "pr",
    "sl",
    "cl",
    "sh",
  ];
  $num_vowels = count($vowels);
  $num_cons = count($cons);
  $word = '';
  while (strlen($word) < $length) {
    $word .= $cons[mt_rand(0, $num_cons - 1)] . $vowels[mt_rand(0, $num_vowels - 1)];
  }
  return substr($word, 0, $length);
}