Faker\Provider\en_ZA\Person::idNumber PHP Метод

idNumber() публичный Метод

public idNumber ( DateTime $birthdate = null, boolean $citizen = true, string $gender = null ) : string
$birthdate DateTime
$citizen boolean
$gender string
Результат string
    public function idNumber(\DateTime $birthdate = null, $citizen = true, $gender = null)
    {
        if (!$birthdate) {
            $birthdate = $this->generator->dateTimeThisCentury();
        }
        $birthDateString = $birthdate->format('ymd');
        switch (strtolower($gender)) {
            case static::GENDER_FEMALE:
                $genderDigit = self::numberBetween(0, 4);
                break;
            case static::GENDER_MALE:
                $genderDigit = self::numberBetween(5, 9);
                break;
            default:
                $genderDigit = self::numberBetween(0, 9);
        }
        $sequenceDigits = str_pad(self::randomNumber(3), 3, 0, STR_PAD_BOTH);
        $citizenDigit = $citizen === true ? '0' : '1';
        $raceDigit = self::randomNumber(1);
        $partialIdNumber = $birthDateString . $genderDigit . $sequenceDigits . $citizenDigit . $raceDigit;
        return $partialIdNumber . Luhn::computeCheckDigit($partialIdNumber);
    }
Person