HumHub Documentation (unofficial)

Person extends Person
in package

Table of Contents

Constants

GENDER_FEMALE  = 'female'
GENDER_MALE  = 'male'

Properties

$femaleNameFormats  : mixed
$firstNameFemale  : mixed
$firstNameFormat  : mixed
$firstNameMale  : mixed
$generator  : Generator
$lastName  : mixed
$maleNameFormats  : mixed
$titleFemale  : mixed
$titleFormat  : mixed
$titleMale  : mixed
$unique  : UniqueGenerator
$prefix  : mixed

Methods

__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
nationalIdNumber()  : 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
prefix()  : mixed
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
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.
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

$femaleNameFormats

protected static mixed $femaleNameFormats = ['{{firstNameFemale}} {{lastName}}', '{{prefix}} {{firstNameFemale}} {{lastName}}', '{{titleFemale}} {{firstNameFemale}} {{lastName}}']

$firstNameFemale

protected static mixed $firstNameFemale = ['آثار', 'آلاء', 'آية', 'أبرار', 'أحلام', 'أروى', 'أريج', 'أسماء', 'أسيل', 'أصاله', 'أفنان', 'ألاء', 'أماني', 'أمل', 'أميرة', 'أنسام', 'أنوار', 'إخلاص', 'إسراء', 'إكرام', 'إنعام', 'إيمان', 'إيناس', 'ابتهاج', 'ابتهال', 'إخلاص', 'أروى', 'أريج', 'أزهار', 'اسراء', 'اسرار', 'اسيل', 'اشراق', 'أفراح', 'إكرام', 'إلهام', 'آمال', 'أمنة', 'أميرة', 'أمينة', 'أنعام', 'أنوار', 'آيات', 'إيمان', 'إيناس', 'آية', 'بتول', 'بثينة', 'بسمة', 'بشائر', 'بشرى', 'تالا', 'تالة', 'تسنيم', 'تغريد', 'تقوى', 'تقى', 'تمارا', 'تهاني', 'ثريا', 'جميلة', 'جنى', 'جهاد', 'حبيبة', 'حسناء', 'حلا', 'حليمة', 'حنان', 'حنين', 'حياة', 'خديجة', 'خلود', 'دارين', 'داليا', 'دانا', 'دانة', 'دانية', 'دعاء', 'دلال', 'دنيا', 'ديانا', 'ديما', 'دينا', 'رؤى', 'راما', 'رانا', 'رانيا', 'راوية', 'راية', 'ربا', 'رباب', 'ربى', 'رجاء', 'رحمة', 'رحمه', 'رزان', 'رشا', 'رغد', 'رغدة', 'رقية', 'رنا', 'رناد', 'رنده', 'رنيم', 'رنين', 'رهف', 'روان', 'رولى', 'رويدة', 'ريان', 'ريتا', 'ريم', 'ريما', 'ريناد', 'ريهام', 'زكية', 'زهرة', 'زين', 'زينا', 'زينات', 'زينب', 'زينة', 'ساجدة', 'سارة', 'سجى', 'سحر', 'سعاد', 'سكينة', 'سلسبيل', 'سلمى', 'سلوى', 'سما', 'سماح', 'سماره', 'سمر', 'سمية', 'سميرة', 'سناء', 'سندس', 'سهام', 'سهر', 'سهى', 'سهير', 'سهيله', 'سوزان', 'سوسن', 'سيرين', 'سيرينا', 'سيلين', 'سيما', 'شذى', 'شروق', 'شريفة', 'شرين', 'شريهان', 'شفاء', 'شهد', 'شيرين', 'شيماء', 'صابرين', 'صبا', 'صباح', 'صبرين', 'صفا', 'صفاء', 'صفية', 'ضحى', 'ضياء', 'عائشة', 'عاليا', 'عالية', 'عبلة', 'عبير', 'عزة', 'عزيزة', 'عفاف', 'علا', 'علياء', 'عهد', 'غادة', 'غدير', 'غرام', 'غزل', 'غيداء', 'فاتن', 'فاديه', 'فاطمة', 'فايزة', 'فتحية', 'فدوى', 'فدى', 'فرح', 'فريال', 'فريدة', 'فوزية', 'فيروز', 'فيفيان', 'قمر', 'لارا', 'لانا', 'لبنا', 'لطيفة', 'لمى', 'لميس', 'لنا', 'لورا', 'لورينا', 'لونا', 'ليان', 'ليدا', 'ليلى', 'ليليان', 'لين', 'لينا', 'لينة', 'ليندا', 'مايا', 'مجدولين', 'مديحة', 'مرام', 'مروة', 'مريام', 'مريم', 'مشيرة', 'معالي', 'ملاك', 'ملك', 'منار', 'منال', 'منى', 'مها', 'مي', 'ميادة', 'مياده', 'ميار', 'ميان', 'ميرا', 'ميرال', 'ميران', 'ميرفت', 'ميس', 'ميساء', 'ميسره', 'ناديا', 'نادية', 'نادين', 'ناديه', 'نانسي', 'نبيله', 'نجاة', 'نجلاء', 'نجوى', 'نداء', 'ندى', 'نرمين', 'نسرين', 'نسيمة', 'نعمت', 'نعمه', 'نهاد', 'نهى', 'نوال', 'نور', 'نورا', 'نوران', 'نيروز', 'نيفين', 'هادلين', 'هالة', 'هانيا', 'هايدي', 'هبة', 'هدايه', 'هدى', 'هديل', 'هلا', 'هنا', 'هناء', 'هنادي', 'هند', 'هيا', 'هيفا', 'هيفاء', 'هيلين', 'وئام', 'وجدان', 'وداد', 'ورود', 'وسام', 'وسيم', 'وعد', 'وفاء', 'ولاء', 'يارا', 'ياسمين', 'يسرى']
Tags
see
http://muslim-names.us/

$firstNameFormat

protected static mixed $firstNameFormat = ['{{firstNameMale}}', '{{firstNameFemale}}']

$firstNameMale

protected static mixed $firstNameMale = ['آدم', 'أبراهيم', 'أحمد', 'أدهم', 'أسامة', 'أسعد', 'أشرف', 'أكثم', 'أكرم', 'أمجد', 'أمين', 'أنس', 'أنور', 'أيمن', 'أيوب', 'إبراهيم', 'إسلام', 'إسماعيل', 'إلياس', 'إياد', 'إيهاب', 'ابراهيم', 'احسان', 'احمد', 'ادريس', 'ادم', 'ادهم', 'اديب', 'اسامة', 'اسحاق', 'اسحق', 'اسعد', 'اسلام', 'اسماعيل', 'اصلان', 'اكرم', 'المنصور', 'امجد', 'امير', 'امين', 'أنس', 'انور', 'انيس', 'اياد', 'اياس', 'ايمن', 'ايوب', 'باسل', 'باسم', 'باهر', 'بدر', 'برهان', 'بسام', 'بشار', 'بشر', 'بشير', 'بكر', 'بلال', 'بليغ', 'بهاء', 'توفيق', 'جابر', 'جاسر', 'جاسم', 'جعفر', 'جلال', 'جمال', 'جمزه', 'جميل', 'جهاد', 'حاتم', 'حازم', 'حافظ', 'حامد', 'حبيب', 'حسام', 'حسان', 'حسن', 'حسني', 'حسين', 'حمدان', 'حمدي', 'حمزة', 'حميد', 'خالد', 'خضر', 'خلف', 'خليفة', 'خليل', 'خميس', 'داوود', 'دياب', 'رأفت', 'رؤوف', 'رائد', 'رائف', 'راجح', 'راجي', 'راشد', 'راضي', 'راغب', 'رافت', 'راكان', 'رامز', 'رامي', 'ربيع', 'رجب', 'رزق', 'رشاد', 'رشيد', 'رضا', 'رضوان', 'رياض', 'ريان', 'زاهر', 'زاهي', 'زايد', 'زكريا', 'زمام', 'زهير', 'زياد', 'زيد', 'زيدان', 'زين', 'سالم', 'سامح', 'سامر', 'سامي', 'سعد', 'سعيد', 'سلام', 'سلطان', 'سلمان', 'سليم', 'سليمان', 'سمعان', 'سميح', 'سنان', 'سند', 'سيف', 'شادي', 'شاكر', 'شريف', 'شهاب', 'شهم', 'شوان', 'صادق', 'صافي', 'صالح', 'صفاء', 'صفوان', 'صقر', 'صلاح', 'صلاح الدين', 'صهيب', 'ضرغام', 'ضياء', 'ضياء الدين', 'طارق', 'طالب', 'طاهر', 'طه', 'عادل', 'عاصم', 'عاطف', 'عبيدة', 'عثمان', 'عدلي', 'عدنان', 'عزت', 'عصام', 'علاء', 'علي', 'عماد', 'عمار', 'عمر', 'عمرو', 'عنان', 'عواد', 'عوض', 'عوف', 'عوني', 'عيد', 'عيسى', 'غازي', 'غسان', 'غيث', 'فؤاد', 'فادي', 'فارس', 'فاروق', 'فاضل', 'فايز', 'فتحي', 'فراس', 'فرح', 'فريد', 'فهد', 'فهمي', 'فوزي', 'فيصل', 'قارس', 'قاسم', 'قيس', 'كامل', 'كرم', 'كريم', 'كمال', 'لؤي', 'لبيب', 'لطفي', 'ليث', 'مأمون', 'مؤمن', 'مؤنس', 'ماجد', 'مازن', 'مالك', 'مامون', 'ماهر', 'مبارك', 'مجد', 'مجدي', 'محسن', 'محمد ', 'محمود', 'محي', 'مختار', 'مدحت', 'مراد', 'مروان', 'مسعد', 'مسعود', 'مصباح', 'مصطفى', 'مصعب', 'معاذ', 'معتز', 'معتصم', 'ممدوح', 'منتصر', 'منصور', 'منير', 'مهاب', 'مهدي', 'مهند', 'موسى', 'نائل', 'ناجي', 'نادر', 'ناصر', 'نبيل', 'نديم', 'نزار', 'نزيه', 'نسيم', 'نشات', 'نصار', 'نصر', 'نضال', 'نعمان', 'نعمة', 'نعيم', 'نقولا', 'هادي', 'هاشم', 'هانى', 'هاني', 'هشام', 'هلال', 'همام', 'هيثم', 'وائل', 'واصف', 'وجدي', 'وجيه', 'وحيد', 'وديع', 'وسام', 'وسيم', 'وصفي', 'وليد', 'وهيب', 'ياسر', 'ياسين', 'يامن', 'يحيى', 'يشار', 'يعقوب', 'يوسف', 'يونس']
Tags
see
http://muslim-names.us/

$lastName

protected static mixed $lastName = ['عبد الرحيم', 'عبد الرحمن', 'عبد الرؤوف', 'عبد الحميد', 'عبد الله', 'عبد الباسط', 'عبد الحليم', 'عبد الجواد', 'عبد الجليل', 'عبد المجيد', 'عبد المطلب', 'عبد المهيمن', 'عبد القادر', 'عبد الفتاح', 'عبد العزيز', 'عبد السلام', 'عبد الرزاق', 'طلال', 'هارون', 'شافع', 'عبد الكريم', 'عبد اللطيف', 'عبد الوهاب', 'عبد الهادي', 'عبد الناصر', 'عبد المعطي', 'نجيب', 'مظهر', 'عزيز', 'عمران', 'فواز', 'غانم', 'مجاهد', 'عزمي', 'زين العابدين', 'كاظم', 'السويلم', 'رجائي', 'مهران', 'رسلان', 'السقا', 'مكي', 'حارث', 'غالب', 'السايس', 'صدام', 'هوساوي', 'السعيد', 'الداوود', 'جبر', 'عز الدين', 'عزام', 'عز العرب', 'الصعيدي', 'جمال الدين', 'السباعي', 'الكفراوي']

$maleNameFormats

protected static mixed $maleNameFormats = ['{{firstNameMale}} {{lastName}}', '{{prefix}} {{firstNameMale}} {{lastName}}', '{{titleMale}} {{firstNameMale}} {{lastName}}']

$titleFemale

protected static mixed $titleFemale = ['السيدة', 'الآنسة', 'الدكتورة', 'المهندسة']

$titleFormat

protected static mixed $titleFormat = ['{{titleMale}}', '{{titleFemale}}']

$titleMale

protected static mixed $titleMale = ['السيد', 'الأستاذ', 'الدكتور', 'المهندس']

$prefix

private static mixed $prefix = ['أ.', 'د.', 'أ.د', 'م.']

Methods

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
example

$faker->asciify(''********'); // "s5'G!uC3"

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 be parsed

Return values
string

firstName()

public firstName([string|null $gender = null ]) : string
Parameters
$gender : string|null = null

'male', 'female' or null for any

Tags
example

'John'

Return values
string

firstNameFemale()

public static firstNameFemale() : string
Return values
string

firstNameMale()

public static firstNameMale() : string
Return values
string

lastName()

public lastName() : string
Tags
example

'Doe'

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
example

'John Doe'

Return values
string

numberBetween()

Returns a random number between $int1 and $int2 (any order)

public static numberBetween([int $int1 = 0 ][, int $int2 = 2147483647 ]) : int
Parameters
$int1 : int = 0

default to 0

$int2 : int = 2147483647

defaults to 32 bit max integer, ie 2147483647

Tags
example

79907610

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

prefix()

public static prefix() : mixed
Tags
example

'أ.'

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>|class-string|Traversable $array = ['a', 'b', 'c'] ]) : mixed
Parameters
$array : array<string|int, mixed>|class-string|Traversable = ['a', 'b', 'c']
Tags
throws
InvalidArgumentException

randomElements()

Returns randomly ordered subsequence of $count elements from a provided array

public static randomElements([array<string|int, mixed>|class-string|Traversable $array = ['a', 'b', 'c'] ][, int|null $count = 1 ][, bool $allowDuplicates = false ]) : array<string|int, mixed>
Parameters
$array : array<string|int, mixed>|class-string|Traversable = ['a', 'b', 'c']

Array to take elements from. Defaults to a-c

$count : int|null = 1

Number of elements to take. If null then returns random number of elements

$allowDuplicates : bool = false

Allow elements to be picked several times. Defaults to false

Tags
todo

update default $count to null (BC) for next major version

throws
InvalidArgumentException
throws
LengthException

When requesting more elements than provided

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 = 0 ][, float|int $max = null ]) : float
Parameters
$nbMaxDecimals : int = null
$min : float|int = 0
$max : float|int = null
Tags
example

48.8932

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

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
example

79907610

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
example

$faker->regexify('[A-Z0-9._%+-]+@[A-Z0-9.-]+.[A-Z]{2,4}'); // sm0@y8k96a.ej

Regex delimiters '/.../' and begin/end markers '^...$' are ignored.

Only supports a small subset of the regex syntax. For instance, unicode, negated classes, unbounded ranges, subpatterns, back references, assertions, recursive patterns, and comments are not supported. Escaping support is extremely fragile.

This method is also VERY slow. Use it only when no other formatter can generate the fake data you want. For instance, prefer calling $faker->email rather than regexify with the previous regular expression.

Also note than bothify can probably do most of what this method does, but much faster. For instance, for a dummy email generation, try $faker->bothify('?????????@???.???').

see
https://github.com/icomefromthenet/ReverseRegex

for a more robust implementation

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
example

$faker->shuffle([1, 2, 3]); // [2, 1, 3]

example

$faker->shuffle('hello, world'); // 'rlo,h eold!lw'

see
shuffleArray()
see
shuffleString()
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
see
http://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle
example

$faker->shuffleArray([1, 2, 3]); // [2, 1, 3]

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
see
http://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle
example

$faker->shuffleString('hello, world'); // 'rlo,h eold!lw'

Return values
string

The shuffled set

title()

public title([string|null $gender = null ]) : string
Parameters
$gender : string|null = null

'male', 'female' or null for any

Tags
example

'Mrs.'

Return values
string

titleFemale()

public static titleFemale() : string
Tags
example

'Mrs.'

Return values
string

titleMale()

public static titleMale() : string
Tags
example

'Mr.'

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
throws
OverflowException

When no unique value can be found by iterating $maxRetries times

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
throws
OverflowException

When no valid value can be found by iterating $maxRetries times

Return values
ValidGenerator

A proxy class returning only valid values

replaceWildcard()

private static replaceWildcard(mixed $string, mixed $wildcard, mixed $callback) : mixed
Parameters
$string : mixed
$wildcard : mixed
$callback : mixed

        
On this page

Search results