generator->parse($format); } /** * @param string|null $gender 'male', 'female' or null for any * @return string * @example 'John' */ public function firstName($gender = null) { if ($gender === static::GENDER_MALE) { return static::firstNameMale(); } elseif ($gender === static::GENDER_FEMALE) { return static::firstNameFemale(); } return $this->generator->parse(static::randomElement(static::$firstNameFormat)); } public static function firstNameMale() { return static::randomElement(static::$firstNameMale); } public static function firstNameFemale() { return static::randomElement(static::$firstNameFemale); } /** * @example 'Doe' * @return string */ public function lastName() { return static::randomElement(static::$lastName); } /** * @example 'Mrs.' * @param string|null $gender 'male', 'female' or null for any * @return string */ public function title($gender = null) { if ($gender === static::GENDER_MALE) { return static::titleMale(); } elseif ($gender === static::GENDER_FEMALE) { return static::titleFemale(); } return $this->generator->parse(static::randomElement(static::$titleFormat)); } /** * @example 'Mr.' */ public static function titleMale() { return static::randomElement(static::$titleMale); } /** * @example 'Mrs.' */ public static function titleFemale() { return static::randomElement(static::$titleFemale); } }