Вход Регистрация
Файл: vendor/fakerphp/faker/src/Faker/Provider/en_ZA/PhoneNumber.php
Строк: 82
<?php

namespace FakerProvideren_ZA;

class 
PhoneNumber extends FakerProviderPhoneNumber
{
    protected static 
$formats = [
        
'+27({{areaCode}})#######',
        
'+27{{areaCode}}#######',
        
'0{{areaCode}}#######',
        
'0{{areaCode}} ### ####',
        
'0{{areaCode}}-###-####',
    ];

    protected static 
$cellphoneFormats = [
        
'+27{{cellphoneCode}}#######',
        
'0{{cellphoneCode}}#######',
        
'0{{cellphoneCode}} ### ####',
        
'0{{cellphoneCode}}-###-####',
    ];

    protected static 
$specialFormats = [
        
'{{specialCode}}#######',
        
'{{specialCode}} ### ####',
        
'{{specialCode}}-###-####',
        
'({{specialCode}})###-####',
    ];

    protected static 
$tollFreeAreaCodes = [
        
'0800''0860''0861''0862',
    ];

    
/**
     * @see https://en.wikipedia.org/wiki/Telephone_numbers_in_South_Africa
     */
    
public static function areaCode()
    {
        
$digits[] = self::numberBetween(15);

        switch (
$digits[0]) {
            case 
1:
                
$digits[] = self::numberBetween(18);

                break;

            case 
2:
                
$number self::numberBetween(18);
                
$digits[] = in_array($number, [56], false) ? $number $number;

                break;

            case 
3:
                
$number self::numberBetween(18);
                
$digits[] = in_array($number, [78], false) ? $number $number;

                break;

            case 
4:
                
$digits[] = self::numberBetween(19);

                break;

            case 
5:
                
$number self::numberBetween(18);
                
$digits[] = in_array($number, [25], false) ? $number $number;

                break;
        }

        return 
implode(''$digits);
    }

    public static function 
cellphoneCode()
    {
        
$digits[] = self::numberBetween(68);

        switch (
$digits[0]) {
            case 
6:
                
$digits[] = self::numberBetween(02);

                break;

            case 
7:
                
$number self::numberBetween(19);
                
$digits[] = in_array($number, [57], false) ? $number $number;

                break;

            case 
8:
                
$digits[] = self::numberBetween(19);

                break;
        }

        return 
implode(''$digits);
    }

    public static function 
specialCode()
    {
        return static::
randomElement(static::$tollFreeAreaCodes);
    }

    public function 
mobileNumber()
    {
        
$format = static::randomElement(static::$cellphoneFormats);

        return 
self::numerify($this->generator->parse($format));
    }

    public function 
tollFreeNumber()
    {
        
$format = static::randomElement(static::$specialFormats);

        return 
self::numerify($this->generator->parse($format));
    }
}
Онлайн: 1
Реклама