mirror of
https://github.com/fzaninotto/Faker.git
synced 2025-03-22 08:19:52 +01:00
Added ua_UA provider
This commit is contained in:
parent
70c116bc33
commit
b0b6eb6029
344
src/Faker/Provider/ua_UA/Address.php
Normal file
344
src/Faker/Provider/ua_UA/Address.php
Normal file
@ -0,0 +1,344 @@
|
||||
<?php
|
||||
|
||||
namespace Faker\Provider\ua_UA;
|
||||
|
||||
class Address extends \Faker\Provider\Base
|
||||
{
|
||||
protected static $cityPrefix = array('місто');
|
||||
protected static $regionSuffix = array('область');
|
||||
protected static $streetPrefix = array(
|
||||
'вул.', 'пров.', 'пл.', 'просп.'
|
||||
);
|
||||
protected static $buildingNumber = array('##');
|
||||
protected static $postcode = array('#####');
|
||||
protected static $country = array(
|
||||
'Афганістан',
|
||||
'Албанія',
|
||||
'Алжир',
|
||||
'Андорра',
|
||||
'Ангола',
|
||||
'Аргентина',
|
||||
'Вірменія',
|
||||
'Австралія',
|
||||
'Австрія',
|
||||
'Азербайджан',
|
||||
'Багамські острови',
|
||||
'Бахрейн',
|
||||
'Бангладеш',
|
||||
'Барбадос',
|
||||
'Білорусь',
|
||||
'Бельгія',
|
||||
'Беліз',
|
||||
'Бенін',
|
||||
'Бутан',
|
||||
'Болівія',
|
||||
'Боснія і Герцеговина',
|
||||
'Ботсвана',
|
||||
'Бразилія',
|
||||
'Бруней',
|
||||
'Болгарія',
|
||||
'Бурунді',
|
||||
'Камбоджа',
|
||||
'Камерун',
|
||||
'Канада',
|
||||
'Кабо-Верде',
|
||||
'Центрально-Африканська Республіка',
|
||||
'Чад',
|
||||
'Чилі',
|
||||
'Китай',
|
||||
'Колумбія',
|
||||
'Коморські острови',
|
||||
'Конго',
|
||||
'Конго, Демократична Республіка',
|
||||
'Коста-Ріка',
|
||||
'Хорватія',
|
||||
'Куба',
|
||||
'Кіпр',
|
||||
'Чеська республіка',
|
||||
'Данія',
|
||||
'Джибуті',
|
||||
'Домініка',
|
||||
'Домініканська Республіка',
|
||||
'східний Тимор',
|
||||
'Еквадор',
|
||||
'Єгипет',
|
||||
'Сальвадор',
|
||||
'Екваторіальна Гвінея',
|
||||
'Еритрея',
|
||||
'Естонія',
|
||||
'Ефіопія',
|
||||
'Фіджі',
|
||||
'Фінляндія',
|
||||
'Франція',
|
||||
'Габон',
|
||||
'Гамбія',
|
||||
'Грузія',
|
||||
'Німеччина',
|
||||
'Гана',
|
||||
'Греція',
|
||||
'Гренада',
|
||||
'Гватемала',
|
||||
'Гвінея',
|
||||
'Гвінея-Бісау',
|
||||
'Гайана',
|
||||
'Гаїті',
|
||||
'Гондурас',
|
||||
'Угорщина',
|
||||
'Ісландія',
|
||||
'Індія',
|
||||
'Індонезія',
|
||||
'Іран',
|
||||
'Ірак',
|
||||
'Ірландія',
|
||||
'Ізраїль',
|
||||
'Італія',
|
||||
'Ямайка',
|
||||
'Японія',
|
||||
'Йорданія',
|
||||
'Казахстан',
|
||||
'Кенія',
|
||||
'Кірібаті',
|
||||
'Північна Корея',
|
||||
'Південна Корея',
|
||||
'Косово',
|
||||
'Кувейт',
|
||||
'Киргизія',
|
||||
'Лаос',
|
||||
'Латвія',
|
||||
'Ліван',
|
||||
'Лесото',
|
||||
'Ліберія',
|
||||
'Лівія',
|
||||
'Ліхтенштейн',
|
||||
'Литва',
|
||||
'Люксембург',
|
||||
'Македонії',
|
||||
'Мадагаскар',
|
||||
'Малаві',
|
||||
'Малайзія',
|
||||
'Мальдіви',
|
||||
'Малі',
|
||||
'Мальта',
|
||||
'Маршаллові острови',
|
||||
'Мавританія',
|
||||
'Маврикій',
|
||||
'Мексика',
|
||||
'Мікронезія',
|
||||
'Молдова',
|
||||
'Монако',
|
||||
'Монголія',
|
||||
'Чорногорія',
|
||||
'Марокко',
|
||||
'Мозамбік',
|
||||
'М\'янма',
|
||||
'Намібія',
|
||||
'Науру',
|
||||
'Непал',
|
||||
'Нідерланди',
|
||||
'Нова Зеландія',
|
||||
'Нікарагуа',
|
||||
'Нігер',
|
||||
'Нігерія',
|
||||
'Норвегія',
|
||||
'Оман',
|
||||
'Пакистан',
|
||||
'Палау',
|
||||
'Панама',
|
||||
'Папуа-Нова Гвінея',
|
||||
'Парагвай',
|
||||
'Перу',
|
||||
'Філіппіни',
|
||||
'Польща',
|
||||
'Португалія',
|
||||
'Катар',
|
||||
'Румунія',
|
||||
'Російська Федерація',
|
||||
'Руанда',
|
||||
'Сент-Кітс і Невіс',
|
||||
'Сент-Люсія',
|
||||
'Сент-Вінсент і Гренадіни',
|
||||
'Самоа',
|
||||
'Саудівська Аравія',
|
||||
'Сенегал',
|
||||
'Сербія',
|
||||
'Сейшельські острови',
|
||||
'Сьєрра-Леоне',
|
||||
'Сінгапур',
|
||||
'Словаччина',
|
||||
'Словенія',
|
||||
'Соломонові острови',
|
||||
'Сомалі',
|
||||
'ПАР',
|
||||
'Іспанія',
|
||||
'Шрі Ланка',
|
||||
'Судан',
|
||||
'Сурінам',
|
||||
'Свазіленд',
|
||||
'Швеція',
|
||||
'Швейцарія',
|
||||
'Сирія',
|
||||
'Тайвань',
|
||||
'Таджикистан',
|
||||
'Танзанія',
|
||||
'Таїланд',
|
||||
'Того',
|
||||
'Тонга',
|
||||
'Тринідад і Тобаго',
|
||||
'Туніс',
|
||||
'Туреччина',
|
||||
'Туркменістан',
|
||||
'Тувалу',
|
||||
'Уганда',
|
||||
'Україна',
|
||||
'Об\'єднані Арабські Емірати',
|
||||
'Великобританія',
|
||||
'Сполучені Штати',
|
||||
'Уругвай',
|
||||
'Узбекистан',
|
||||
'Вануату',
|
||||
'Ватикан',
|
||||
'Венесуела',
|
||||
'В\'єтнам',
|
||||
'Ємен',
|
||||
'Замбія',
|
||||
'Зімбабве',
|
||||
);
|
||||
|
||||
protected static $region = array(
|
||||
'Вінницька',
|
||||
'Волинська',
|
||||
'Дніпропетровська',
|
||||
'Донецька',
|
||||
'Житомирська',
|
||||
'Закарпатська',
|
||||
'Запорізька',
|
||||
'Івано-Франківська',
|
||||
'Київська',
|
||||
'Кіровоградська',
|
||||
'Луганська',
|
||||
'Львівська',
|
||||
'Миколаївська',
|
||||
'Одеська',
|
||||
'Полтавська',
|
||||
'Рівненська',
|
||||
'Сумська',
|
||||
'Тернопільська',
|
||||
'Харківська',
|
||||
'Херсонська',
|
||||
'Хмельницька',
|
||||
'Черкаська',
|
||||
'Чернівецька',
|
||||
'Чернігівська'
|
||||
);
|
||||
|
||||
protected static $city = array(
|
||||
'Вінниця',
|
||||
'Луцьк',
|
||||
'Дніпропетровськ',
|
||||
'Донецьк',
|
||||
'Житомир',
|
||||
'Ужгород',
|
||||
'Запоріжжя',
|
||||
'Івано-Франківськ',
|
||||
'Київ',
|
||||
'Кіровоград',
|
||||
'Луганськ',
|
||||
'Львів',
|
||||
'Миколаїв',
|
||||
'Одеса',
|
||||
'Полтава',
|
||||
'Рівне',
|
||||
'Суми',
|
||||
'Тернопіль',
|
||||
'Харків',
|
||||
'Херсон',
|
||||
'Хмельницьк',
|
||||
'Черкаси',
|
||||
'Чернівці',
|
||||
'Чернігів'
|
||||
);
|
||||
|
||||
protected static $street = array(
|
||||
'Тараса Шевченка',
|
||||
'Лесі Українки',
|
||||
'Леніна',
|
||||
'40 років Перемоги',
|
||||
'50 років Жовтня',
|
||||
'Михайла Грушевського',
|
||||
'Гагаріна',
|
||||
'Космонавта Попова',
|
||||
'Генерала Жадова',
|
||||
'Пацаєва',
|
||||
'Волкова',
|
||||
);
|
||||
|
||||
protected static $addressFormats = array(
|
||||
"{{postcode}}, {{cityAndRegion}}, {{streetPrefix}} {{street}}, {{buildingNumber}}",
|
||||
);
|
||||
|
||||
public static function buildingNumber()
|
||||
{
|
||||
return static::numerify(static::randomElement(static::$buildingNumber));
|
||||
}
|
||||
|
||||
public function address()
|
||||
{
|
||||
$format = static::randomElement(static::$addressFormats);
|
||||
return $this->generator->parse($format, array());
|
||||
}
|
||||
|
||||
public static function country()
|
||||
{
|
||||
return static::randomElement(static::$country);
|
||||
}
|
||||
|
||||
public static function postcode()
|
||||
{
|
||||
return static::toUpper(static::bothify(static::randomElement(static::$postcode)));
|
||||
}
|
||||
|
||||
public static function regionSuffix()
|
||||
{
|
||||
return static::randomElement(static::$regionSuffix);
|
||||
}
|
||||
|
||||
public static function region()
|
||||
{
|
||||
return static::randomElement(static::$region);
|
||||
}
|
||||
|
||||
public static function cityPrefix()
|
||||
{
|
||||
return static::randomElement(static::$cityPrefix);
|
||||
}
|
||||
|
||||
public static function city()
|
||||
{
|
||||
return static::randomElement(static::$city);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get city and region together
|
||||
* We need it because city and region must comply each other in Ukraine
|
||||
* @example 'Закарпатська область, місто Ужгород'
|
||||
* @return string
|
||||
*/
|
||||
public function cityAndRegion()
|
||||
{
|
||||
$regionAndCityNumber = rand(0, count(static::$region) - 1);
|
||||
$region = static::$region[$regionAndCityNumber];
|
||||
$city = static::$city[$regionAndCityNumber];
|
||||
$format = "$region {{regionSuffix}}, {{cityPrefix}} $city";
|
||||
return $this->generator->parse($format);
|
||||
}
|
||||
|
||||
public static function streetPrefix()
|
||||
{
|
||||
return static::randomElement(static::$streetPrefix);
|
||||
}
|
||||
|
||||
public static function street()
|
||||
{
|
||||
return static::randomElement(static::$street);
|
||||
}
|
||||
}
|
54
src/Faker/Provider/ua_UA/Company.php
Normal file
54
src/Faker/Provider/ua_UA/Company.php
Normal file
@ -0,0 +1,54 @@
|
||||
<?php
|
||||
|
||||
namespace Faker\Provider\ua_UA;
|
||||
|
||||
class Company extends \Faker\Provider\Base
|
||||
{
|
||||
protected static $formats = array(
|
||||
'{{companyName}}', // Вектор
|
||||
'{{companyPrefix}} "{{companyName}}"', // ТОВ "Інфоком"
|
||||
'{{companyName}}-{{companySuffix}}"', // Сервіс-Плюс
|
||||
'{{companyPrefix}} "{{companyName}}-{{companySuffix}}"',// ПАТ "Альфа-Стиль"
|
||||
);
|
||||
|
||||
protected static $urlFormats = array(
|
||||
'{{companyName}}',
|
||||
'{{companyName}}-{{companySuffix}}',
|
||||
);
|
||||
|
||||
protected static $companyPrefix = array('ТОВ', 'ПП', 'ПАТ','ПрАТ');
|
||||
protected static $companySuffix = array('Сервіс','Плюс', 'Груп', 'Стиль', 'Дизайн');
|
||||
|
||||
protected static $companyName = array(
|
||||
'Вектор', 'Едельвейс', 'Смарт', 'Альфа', 'Система', 'Універсал',
|
||||
'Інфоком', 'Макс', 'Планета', 'Вектор', 'Приват', 'Еко', 'Мега',
|
||||
'Мегамакс', 'Мульти', 'Майнер'
|
||||
);
|
||||
|
||||
public function company()
|
||||
{
|
||||
$format = static::randomElement(static::$formats);
|
||||
return $this->generator->parse($format);
|
||||
}
|
||||
|
||||
public function companyUrl()
|
||||
{
|
||||
$format = static::randomElement(static::$urlFormats);
|
||||
return $this->generator->parse($format);
|
||||
}
|
||||
|
||||
public static function companyPrefix()
|
||||
{
|
||||
return static::randomElement(static::$companyPrefix);
|
||||
}
|
||||
|
||||
public static function companySuffix()
|
||||
{
|
||||
return static::randomElement(static::$companySuffix);
|
||||
}
|
||||
|
||||
public static function companyName()
|
||||
{
|
||||
return static::randomElement(static::$companyName);
|
||||
}
|
||||
}
|
32
src/Faker/Provider/ua_UA/Internet.php
Normal file
32
src/Faker/Provider/ua_UA/Internet.php
Normal file
@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
namespace Faker\Provider\ua_UA;
|
||||
|
||||
class Internet extends \Faker\Provider\Internet
|
||||
{
|
||||
protected static $tld = array('ua', 'com.ua', 'org.ua', 'net.ua', 'com', 'net', 'org');
|
||||
protected static $freeEmailDomain = array('gmail.com', 'mail.ru', 'ukr.net', 'i.ua', 'rambler.ru');
|
||||
|
||||
/**
|
||||
* @example 'roman93'
|
||||
*/
|
||||
public function userName()
|
||||
{
|
||||
$format = static::randomElement(static::$userNameFormats);
|
||||
return static::toLower(static::bothify(
|
||||
Utils::cyrillicToLatin($this->generator->parse($format))
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @example 'smart-dizayn'
|
||||
*/
|
||||
public function domainWord()
|
||||
{
|
||||
$company = $this->generator->format('companyUrl');
|
||||
$company = str_replace(' ', '-', $company);
|
||||
$company = Utils::cyrillicToLatin($company);
|
||||
return $company;
|
||||
}
|
||||
}
|
74
src/Faker/Provider/ua_UA/Person.php
Normal file
74
src/Faker/Provider/ua_UA/Person.php
Normal file
@ -0,0 +1,74 @@
|
||||
<?php
|
||||
|
||||
namespace Faker\Provider\ua_UA;
|
||||
|
||||
class Person extends \Faker\Provider\Person
|
||||
{
|
||||
protected static $formats = array(
|
||||
'{{firstName}} {{middleName}} {{lastName}}',
|
||||
'{{lastName}} {{firstName}} {{middleName}}',
|
||||
);
|
||||
|
||||
protected static $firstName = array(
|
||||
'Олександр', 'Олексій', 'Дмитро', 'Сергій', 'Андрій', 'Антон',
|
||||
'Віталий', 'Володимир', 'Денис', 'Євген', 'Іван', 'Ігор',
|
||||
'Костянтин', 'Максим', 'Михайло', 'Миколай', 'Роман', 'Анатолій',
|
||||
'Аркадій', 'Арсеній', 'Богдан', 'Болеслав', 'Борис',
|
||||
'Вадим', 'Валентин', 'Валерій', 'Василь', 'Віктор',
|
||||
'Владислав', 'Всеволод', 'В\'ячеслав', 'Генадій', 'Георгій', 'Григорій',
|
||||
'Давид', 'Дан', 'Данил', 'Данило', 'Єгор', 'Єфим',
|
||||
'Захар', 'Илля', 'Йосиф', 'Кирило', 'Лаврентій', 'Лев', 'Леонід', 'Макар',
|
||||
'Марк', 'Мирослав', 'Назар', 'Микита', 'Олег', 'Петро', 'Платон',
|
||||
'Ростислав', 'Руслан', 'Савва', 'Сава', 'Святослав', 'Семен', 'Степан',
|
||||
'Тарас', 'Тимофій', 'Федір', 'Фелікс', 'Юлій', 'Юрій', 'Ян', 'Ярослав',
|
||||
);
|
||||
|
||||
protected static $middleName = array(
|
||||
'Олександрович', 'Олексійович', 'Андрійович', 'Євгенович',
|
||||
'Сергійович', 'Іванович', 'Федорович', 'Тарасович', 'Васильович', 'Романович'
|
||||
);
|
||||
|
||||
protected static $lastName = array(
|
||||
'Антоненко',
|
||||
'Василенко',
|
||||
'Васильчук',
|
||||
'Васильєв',
|
||||
'Гнатюк',
|
||||
'Дмитренко',
|
||||
'Захарчук',
|
||||
'Іванченко',
|
||||
'Микитюк',
|
||||
'Павлюк',
|
||||
'Панасюк',
|
||||
'Петренко',
|
||||
'Романченко',
|
||||
'Сергієнко',
|
||||
'Середа',
|
||||
'Таращук',
|
||||
'Боднаренко',
|
||||
'Броваренко',
|
||||
'Броварчук',
|
||||
'Кравченко',
|
||||
'Кравчук',
|
||||
'Крамаренко',
|
||||
'Крамарчук',
|
||||
'Мельниченко',
|
||||
'Мірошниченко',
|
||||
'Шевченко',
|
||||
'Шевчук',
|
||||
'Шинкаренко',
|
||||
'Пономаренко',
|
||||
'Пономарчук',
|
||||
);
|
||||
|
||||
/**
|
||||
* Return middle name
|
||||
* @example 'Іванович'
|
||||
* @access public
|
||||
* @return string Middle name
|
||||
*/
|
||||
public function middleName()
|
||||
{
|
||||
return static::randomElement(static::$middleName);
|
||||
}
|
||||
}
|
30
src/Faker/Provider/ua_UA/PhoneNumber.php
Normal file
30
src/Faker/Provider/ua_UA/PhoneNumber.php
Normal file
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
namespace Faker\Provider\ua_UA;
|
||||
|
||||
class PhoneNumber extends \Faker\Provider\PhoneNumber
|
||||
{
|
||||
protected static $formats = array(
|
||||
|
||||
// International format (mobile)
|
||||
'+38050#######',
|
||||
'+38096#######',
|
||||
'+38067#######',
|
||||
'+38093#######',
|
||||
'+38063#######',
|
||||
'+38099#######',
|
||||
|
||||
// Internal country format (mobile)
|
||||
'050#######',
|
||||
'096#######',
|
||||
'067#######',
|
||||
'093#######',
|
||||
'063#######',
|
||||
'099#######',
|
||||
|
||||
// More generic formats
|
||||
'+380#######',
|
||||
'+38(0##)#######',
|
||||
'+38(0###)######'
|
||||
);
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user