Person
        
        extends Person
    
    
            
            in package
            
        
    
    
    
        
        
    
Table of Contents
- GENDER_FEMALE = 'female'
 - GENDER_MALE = 'male'
 - $idBirthplaceCode : mixed
 - $idDigitValidator : mixed
 - $characterFemale : mixed
 - $characterMale : mixed
 - $femaleNameFormats : mixed
 - $firstNameFemale : mixed
 - $firstNameFormat : mixed
 - $firstNameMale : mixed
 - $generator : Generator
 - $lastName : mixed
 - $maleNameFormats : mixed
 - $titleFemale : mixed
 - $titleFormat : mixed
 - $titleMale : mixed
 - $unique : UniqueGenerator
 - __construct() : mixed
 - asciify() : string
 - Replaces * signs with random numbers and letters and special characters
 - bothify() : string
 - Replaces hash signs ('#') and question marks ('?') with random numbers and letters An asterisk ('*') is replaced with either a random number or a random letter
 - firstName() : string
 - firstNameFemale() : string
 - firstNameMale() : string
 - lastName() : string
 - lexify() : string
 - Replaces all question mark ('?') occurrences with a random letter
 - name() : string
 - numberBetween() : int
 - Returns a random number between $int1 and $int2 (any order)
 - numerify() : string
 - Replaces all hash sign ('#') occurrences with a random number Replaces all percentage sign ('%') occurrences with a not null number
 - optional() : mixed|null
 - Chainable method for making any formatter optional.
 - passthrough() : mixed
 - Returns the passed value
 - personalIdentityNumber() : string
 - randomAscii() : string
 - Returns a random ASCII character (excluding accents and special chars)
 - randomDigit() : int
 - Returns a random number between 0 and 9
 - randomDigitNot() : int
 - Generates a random digit, which cannot be $except
 - randomDigitNotNull() : int
 - Returns a random number between 1 and 9
 - randomElement() : mixed
 - Returns a random element from a passed array
 - randomElements() : array<string|int, mixed>
 - Returns randomly ordered subsequence of $count elements from a provided array
 - randomFloat() : float
 - Return a random float number
 - randomKey() : int|string|null
 - Returns a random key from a passed associative array
 - randomLetter() : string
 - Returns a random letter from a to z
 - randomName() : mixed
 - randomNumber() : int
 - Returns a random integer with 0 to $nbDigits digits.
 - regexify() : string
 - Transforms a basic regular expression into a random string satisfying the expression.
 - shuffle() : array<string|int, mixed>|string
 - Returns a shuffled version of the argument.
 - shuffleArray() : array<string|int, mixed>
 - Returns a shuffled version of the array.
 - shuffleString() : string
 - Returns a shuffled version of the string.
 - suffix() : mixed
 - title() : string
 - titleFemale() : string
 - titleMale() : string
 - toLower() : string
 - Converts string to lowercase.
 - toUpper() : string
 - Converts string to uppercase.
 - unique() : UniqueGenerator
 - Chainable method for making any formatter unique.
 - valid() : ValidGenerator
 - Chainable method for forcing any formatter to return only valid values.
 - replaceWildcard() : mixed
 
Constants
GENDER_FEMALE
    public
    mixed
    GENDER_FEMALE
    = 'female'
        
        
    
GENDER_MALE
    public
    mixed
    GENDER_MALE
    = 'male'
        
        
    
Properties
$idBirthplaceCode
    public
    static    mixed
    $idBirthplaceCode
     = ['A' => 10, 'B' => 11, 'C' => 12, 'D' => 13, 'E' => 14, 'F' => 15, 'G' => 16, 'H' => 17, 'I' => 34, 'J' => 18, 'K' => 19, 'M' => 21, 'N' => 22, 'O' => 35, 'P' => 23, 'Q' => 24, 'T' => 27, 'U' => 28, 'V' => 29, 'W' => 32, 'X' => 30, 'Z' => 33]
    
        
    
    Tags
$idDigitValidator
    public
    static    mixed
    $idDigitValidator
     = [1, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1]
    
        
    
    Tags
$characterFemale
    protected
    static    mixed
    $characterFemale
     = ['伶', '佩', '佳', '依', '儀', '冠', '君', '嘉', '如', '娟', '婉', '婷', '安', '宜', '家', '庭', '心', '思', '怡', '惠', '慧', '文', '欣', '涵', '淑', '玲', '珊', '琪', '琬', '瑜', '穎', '筑', '筱', '美', '芬', '芳', '華', '萍', '萱', '蓉', '詩', '貞', '郁', '鈺', '雅', '雯', '靜', '馨']
        
        
    
$characterMale
    protected
    static    mixed
    $characterMale
     = ['佳', '俊', '信', '偉', '傑', '冠', '君', '哲', '嘉', '威', '宇', '安', '宏', '宗', '宜', '家', '庭', '廷', '建', '彥', '心', '志', '思', '承', '文', '柏', '樺', '瑋', '穎', '美', '翰', '華', '詩', '豪', '賢', '軒', '銘', '霖']
    
        
    
    Tags
$femaleNameFormats
    protected
    static    mixed
    $femaleNameFormats
     = ['{{lastName}}{{firstNameFemale}}']
        
        
    
$firstNameFemale
    protected
    static    mixed
    $firstNameFemale
     = ['Jane']
        
        
    
$firstNameFormat
    protected
    static    mixed
    $firstNameFormat
     = ['{{firstNameMale}}', '{{firstNameFemale}}']
        
        
    
$firstNameMale
    protected
    static    mixed
    $firstNameMale
     = ['John']
        
        
    
$generator
    protected
        Generator
    $generator
    
    
    
    
$lastName
    protected
    static    mixed
    $lastName
     = ['趙', '錢', '孫', '李', '周', '吳', '鄭', '王', '馮', '陳', '褚', '衛', '蔣', '沈', '韓', '楊', '朱', '秦', '尤', '許', '何', '呂', '施', '張', '孔', '曹', '嚴', '華', '金', '魏', '陶', '姜', '戚', '謝', '鄒', '喻', '柏', '水', '竇', '章', '雲', '蘇', '潘', '葛', '奚', '范', '彭', '郎', '魯', '韋', '昌', '馬', '苗', '鳳', '花', '方', '俞', '任', '袁', '柳', '酆', '鮑', '史', '唐', '費', '廉', '岑', '薛', '雷', '賀', '倪', '湯', '滕', '殷', '羅', '畢', '郝', '鄔', '安', '常', '樂', '于', '時', '傅', '皮', '卞', '齊', '康', '伍', '余', '元', '卜', '顧', '孟', '平', '黃', '和', '穆', '蕭', '尹', '姚', '邵', '湛', '汪', '祁', '毛', '禹', '狄', '米', '貝', '明', '臧', '計', '伏', '成', '戴', '談', '宋', '茅', '龐', '熊', '紀', '舒', '屈', '項', '祝', '董', '梁', '杜', '阮', '藍', '閔', '席', '季', '麻', '強', '賈', '路', '婁', '危', '江', '童', '顏', '郭', '梅', '盛', '林', '刁', '鍾', '徐', '丘', '駱', '高', '夏', '蔡', '田', '樊', '胡', '凌', '霍', '虞', '萬', '支', '柯', '昝', '管', '盧', '莫', '經', '房', '裘', '繆', '干', '解', '應', '宗', '丁', '宣', '賁', '鄧', '郁', '單', '杭', '洪', '包', '諸', '左', '石', '崔', '吉', '鈕', '龔', '程', '嵇', '邢', '滑', '裴', '陸', '榮', '翁', '荀', '羊', '於', '惠', '甄', '麴', '家', '封', '芮', '羿', '儲', '靳', '汲', '邴', '糜', '松', '井', '段', '富', '巫', '烏', '焦', '巴', '弓', '牧', '隗', '山', '谷', '車', '侯', '宓', '蓬', '全', '郗', '班', '仰', '秋', '仲', '伊', '宮', '甯', '仇', '欒', '暴', '甘', '鈄', '厲', '戎', '祖', '武', '符', '劉', '景', '詹', '束', '龍', '葉', '幸', '司', '韶', '郜', '黎', '薊', '薄', '印', '宿', '白', '懷', '蒲', '邰', '從', '鄂', '索', '咸', '籍', '賴', '卓', '藺', '屠', '蒙', '池', '喬', '陰', '鬱', '胥', '能', '蒼', '雙', '聞', '莘', '黨', '翟', '譚', '貢', '勞', '逄', '姬', '申', '扶', '堵', '冉', '宰', '酈', '雍', '郤', '璩', '桑', '桂', '濮', '牛', '壽', '通', '邊', '扈', '燕', '冀', '郟', '浦', '尚', '農', '溫', '別', '莊', '晏', '柴', '瞿', '閻', '充', '慕', '連', '茹', '習', '宦', '艾', '魚', '容', '向', '古', '易', '慎', '戈', '廖', '庾', '終', '暨', '居', '衡', '步', '都', '耿', '滿', '弘', '匡', '國', '文', '寇', '廣', '祿', '闕', '東', '歐', '殳', '沃', '利', '蔚', '越', '夔', '隆', '師', '鞏', '厙', '聶', '晁', '勾', '敖', '融', '冷', '訾', '辛', '闞', '那', '簡', '饒', '空', '曾', '毋', '沙', '乜', '養', '鞠', '須', '豐', '巢', '關', '蒯', '相', '查', '后', '荊', '紅', '游', '竺', '權', '逯', '蓋', '益', '桓', '公', '万俟', '司馬', '上官', '歐陽', '夏侯', '諸葛', '聞人', '東方', '赫連', '皇甫', '尉遲', '公羊', '澹臺', '公冶', '宗政', '濮陽', '淳于', '單于', '太叔', '申屠', '公孫', '仲孫', '軒轅', '令狐', '鍾離', '宇文', '長孫', '慕容', '鮮于', '閭丘', '司徒', '司空', '亓官', '司寇', '仉', '督', '子車', '顓孫', '端木', '巫馬', '公西', '漆雕', '樂正', '壤駟', '公良', '拓跋', '夾谷', '宰父', '穀梁', '晉', '楚', '閆', '法', '汝', '鄢', '涂', '欽', '段干', '百里', '東郭', '南門', '呼延', '歸', '海', '羊舌', '微生', '岳', '帥', '緱', '亢', '況', '後', '有', '琴', '梁丘', '左丘', '東門', '西門', '商', '牟', '佘', '佴', '伯', '賞', '南宮', '墨', '哈', '譙', '笪', '年', '愛', '陽', '佟', '第五', '言', '福']
    
        
    
    Tags
$maleNameFormats
    protected
    static    mixed
    $maleNameFormats
     = ['{{lastName}}{{firstNameMale}}']
        
        
    
$titleFemale
    protected
    static    mixed
    $titleFemale
     = ['小姐', '太太', '博士', '教授']
        
        
    
$titleFormat
    protected
    static    mixed
    $titleFormat
     = ['{{titleMale}}', '{{titleFemale}}']
        
        
    
$titleMale
    protected
    static    mixed
    $titleMale
     = ['先生', '博士', '教授']
        
        
    
$unique
    protected
        UniqueGenerator
    $unique
    
    
    
    
Methods
__construct()
    public
                __construct(Generator $generator) : mixed
        
        Parameters
- $generator : Generator
 
Return values
mixed —asciify()
Replaces * signs with random numbers and letters and special characters
    public
            static    asciify([string $string = '****' ]) : string
    
        Parameters
- $string : string = '****'
 - 
                    
String that needs to bet parsed
 
Tags
Return values
string —bothify()
Replaces hash signs ('#') and question marks ('?') with random numbers and letters An asterisk ('*') is replaced with either a random number or a random letter
    public
            static    bothify([string $string = '## ??' ]) : string
    
        Parameters
- $string : string = '## ??'
 - 
                    
String that needs to bet parsed
 
Return values
string —firstName()
    public
                firstName([string|null $gender = null ]) : string
    
        Parameters
- $gender : string|null = null
 - 
                    
'male', 'female' or null for any
 
Tags
Return values
string —firstNameFemale()
    public
            static    firstNameFemale() : string
    
    
    
        Return values
string —firstNameMale()
    public
            static    firstNameMale() : string
    
    
    
        Return values
string —lastName()
    public
                lastName() : string
    
    
    
    Tags
Return values
string —lexify()
Replaces all question mark ('?') occurrences with a random letter
    public
            static    lexify([string $string = '????' ]) : string
    
        Parameters
- $string : string = '????'
 - 
                    
String that needs to bet parsed
 
Return values
string —name()
    public
                name([string|null $gender = null ]) : string
    
        Parameters
- $gender : string|null = null
 - 
                    
'male', 'female' or null for any
 
Tags
Return values
string —numberBetween()
Returns a random number between $int1 and $int2 (any order)
    public
            static    numberBetween(int $int1[, int $int2 = 2147483647 ]) : int
    
        Parameters
- $int1 : int
 - 
                    
default to 0
 - $int2 : int = 2147483647
 - 
                    
defaults to 32 bit max integer, ie 2147483647
 
Tags
Return values
int —numerify()
Replaces all hash sign ('#') occurrences with a random number Replaces all percentage sign ('%') occurrences with a not null number
    public
            static    numerify([string $string = '###' ]) : string
    
        Parameters
- $string : string = '###'
 - 
                    
String that needs to bet parsed
 
Return values
string —optional()
Chainable method for making any formatter optional.
    public
                optional([float|int $weight = 0.5 ][, mixed $default = null ]) : mixed|null
    
        Parameters
- $weight : float|int = 0.5
 - 
                    
Set the probability of receiving a null value. "0" will always return null, "1" will always return the generator. If $weight is an integer value, then the same system works between 0 (always get false) and 100 (always get true).
 - $default : mixed = null
 
Return values
mixed|null —passthrough()
Returns the passed value
    public
            static    passthrough(mixed $value) : mixed
    
        Parameters
- $value : mixed
 
Return values
mixed —personalIdentityNumber()
    public
                personalIdentityNumber([string $gender = null ]) : string
    
        Parameters
- $gender : string = null
 - 
                    
Person::GENDER_MALE || Person::GENDER_FEMALE
 
Tags
Return values
string —Length 10 alphanumeric characters, begins with 1 latin character (birthplace), 1 number (gender) and then 8 numbers (the last one is check digit).
randomAscii()
Returns a random ASCII character (excluding accents and special chars)
    public
            static    randomAscii() : string
    
    
    
        Return values
string —randomDigit()
Returns a random number between 0 and 9
    public
            static    randomDigit() : int
    
    
    
        Return values
int —randomDigitNot()
Generates a random digit, which cannot be $except
    public
            static    randomDigitNot(int $except) : int
    
        Parameters
- $except : int
 
Return values
int —randomDigitNotNull()
Returns a random number between 1 and 9
    public
            static    randomDigitNotNull() : int
    
    
    
        Return values
int —randomElement()
Returns a random element from a passed array
    public
            static    randomElement([array<string|int, mixed> $array = ['a', 'b', 'c'] ]) : mixed
    
        Parameters
- $array : array<string|int, mixed> = ['a', 'b', 'c']
 
Return values
mixed —randomElements()
Returns randomly ordered subsequence of $count elements from a provided array
    public
            static    randomElements([array<string|int, mixed> $array = ['a', 'b', 'c'] ][, int $count = 1 ][, bool $allowDuplicates = false ]) : array<string|int, mixed>
    
        Parameters
- $array : array<string|int, mixed> = ['a', 'b', 'c']
 - 
                    
Array to take elements from. Defaults to a-c
 - $count : int = 1
 - 
                    
Number of elements to take.
 - $allowDuplicates : bool = false
 - 
                    
Allow elements to be picked several times. Defaults to false
 
Tags
Return values
array<string|int, mixed> —New array with $count elements from $array
randomFloat()
Return a random float number
    public
            static    randomFloat([int $nbMaxDecimals = null ], float|int $min[, float|int $max = null ]) : float
    
        Parameters
- $nbMaxDecimals : int = null
 - $min : float|int
 - $max : float|int = null
 
Tags
Return values
float —randomKey()
Returns a random key from a passed associative array
    public
            static    randomKey([array<string|int, mixed> $array = [] ]) : int|string|null
    
        Parameters
- $array : array<string|int, mixed> = []
 
Return values
int|string|null —randomLetter()
Returns a random letter from a to z
    public
            static    randomLetter() : string
    
    
    
        Return values
string —randomName()
    public
            static    randomName(mixed $pool, mixed $n) : mixed
        
        Parameters
- $pool : mixed
 - $n : mixed
 
Return values
mixed —randomNumber()
Returns a random integer with 0 to $nbDigits digits.
    public
            static    randomNumber([int $nbDigits = null ][, bool $strict = false ]) : int
        The maximum value returned is mt_getrandmax()
Parameters
- $nbDigits : int = null
 - 
                    
Defaults to a random number between 1 and 9
 - $strict : bool = false
 - 
                    
Whether the returned number should have exactly $nbDigits
 
Tags
Return values
int —regexify()
Transforms a basic regular expression into a random string satisfying the expression.
    public
            static    regexify([string $regex = '' ]) : string
    
        Parameters
- $regex : string = ''
 - 
                    
A regular expression (delimiters are optional)
 
Tags
Return values
string —shuffle()
Returns a shuffled version of the argument.
    public
            static    shuffle([array<string|int, mixed>|string $arg = '' ]) : array<string|int, mixed>|string
        This function accepts either an array, or a string.
Parameters
- $arg : array<string|int, mixed>|string = ''
 - 
                    
The set to shuffle
 
Tags
Return values
array<string|int, mixed>|string —The shuffled set
shuffleArray()
Returns a shuffled version of the array.
    public
            static    shuffleArray([array<string|int, mixed> $array = [] ]) : array<string|int, mixed>
        This function does not mutate the original array. It uses the Fisher–Yates algorithm, which is unbiased, together with a Mersenne twister random generator. This function is therefore more random than PHP's shuffle() function, and it is seedable.
Parameters
- $array : array<string|int, mixed> = []
 - 
                    
The set to shuffle
 
Tags
Return values
array<string|int, mixed> —The shuffled set
shuffleString()
Returns a shuffled version of the string.
    public
            static    shuffleString([string $string = '' ][, string $encoding = 'UTF-8' ]) : string
        This function does not mutate the original string. It uses the Fisher–Yates algorithm, which is unbiased, together with a Mersenne twister random generator. This function is therefore more random than PHP's shuffle() function, and it is seedable. Additionally, it is UTF8 safe if the mb extension is available.
Parameters
- $string : string = ''
 - 
                    
The set to shuffle
 - $encoding : string = 'UTF-8'
 - 
                    
The string encoding (defaults to UTF-8)
 
Tags
Return values
string —The shuffled set
suffix()
    public
            static    suffix() : mixed
        
    
    
        Return values
mixed —title()
    public
                title([string|null $gender = null ]) : string
    
        Parameters
- $gender : string|null = null
 - 
                    
'male', 'female' or null for any
 
Tags
Return values
string —titleFemale()
    public
            static    titleFemale() : string
    
    
    
    Tags
Return values
string —titleMale()
    public
            static    titleMale() : string
    
    
    
    Tags
Return values
string —toLower()
Converts string to lowercase.
    public
            static    toLower([string $string = '' ]) : string
        Uses mb_string extension if available.
Parameters
- $string : string = ''
 - 
                    
String that should be converted to lowercase
 
Return values
string —toUpper()
Converts string to uppercase.
    public
            static    toUpper([string $string = '' ]) : string
        Uses mb_string extension if available.
Parameters
- $string : string = ''
 - 
                    
String that should be converted to uppercase
 
Return values
string —unique()
Chainable method for making any formatter unique.
    public
                unique([bool $reset = false ][, int $maxRetries = 10000 ]) : UniqueGenerator
        
// will never return twice the same value
$faker->unique()->randomElement(array(1, 2, 3));
Parameters
- $reset : bool = false
 - 
                    
If set to true, resets the list of existing values
 - $maxRetries : int = 10000
 - 
                    
Maximum number of retries to find a unique value, After which an OverflowException is thrown.
 
Tags
Return values
UniqueGenerator —A proxy class returning only non-existing values
valid()
Chainable method for forcing any formatter to return only valid values.
    public
                valid([Closure $validator = null ][, int $maxRetries = 10000 ]) : ValidGenerator
        The value validity is determined by a function passed as first argument.
$values = array();
$evenValidator = function ($digit) {
  return $digit % 2 === 0;
};
for ($i=0; $i < 10; $i++) {
  $values []= $faker->valid($evenValidator)->randomDigit;
}
print_r($values); // [0, 4, 8, 4, 2, 6, 0, 8, 8, 6]
Parameters
- $validator : Closure = null
 - 
                    
A function returning true for valid values
 - $maxRetries : int = 10000
 - 
                    
Maximum number of retries to find a unique value, After which an OverflowException is thrown.
 
Tags
Return values
ValidGenerator —A proxy class returning only valid values
replaceWildcard()
    private
            static    replaceWildcard(mixed $string[, mixed $wildcard = '#' ][, mixed $callback = 'static::randomDigit' ]) : mixed
        
        Parameters
- $string : mixed
 - $wildcard : mixed = '#'
 - $callback : mixed = 'static::randomDigit'