PhoneNumber.php
1.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
namespace Faker\Provider\ro_RO;
class PhoneNumber extends \Faker\Provider\PhoneNumber
{
protected static $normalFormats = [
'landline' => [
'021#######', // Bucharest
'023#######',
'024#######',
'025#######',
'026#######',
'027#######', // non-geographic
'031#######', // Bucharest
'033#######',
'034#######',
'035#######',
'036#######',
'037#######', // non-geographic
],
'mobile' => [
'07########',
],
];
protected static $specialFormats = [
'toll-free' => [
'0800######',
'0801######', // shared-cost numbers
'0802######', // personal numbering
'0806######', // virtual cards
'0807######', // pre-paid cards
'0870######', // internet dial-up
],
'premium-rate' => [
'0900######',
'0903######', // financial information
'0906######', // adult entertainment
],
];
/**
* @see http://en.wikipedia.org/wiki/Telephone_numbers_in_Romania#Last_years
*/
public function phoneNumber()
{
$type = static::randomElement(array_keys(static::$normalFormats));
return static::numerify(static::randomElement(static::$normalFormats[$type]));
}
public static function tollFreePhoneNumber()
{
return static::numerify(static::randomElement(static::$specialFormats['toll-free']));
}
public static function premiumRatePhoneNumber()
{
return static::numerify(static::randomElement(static::$specialFormats['premium-rate']));
}
}